Результаты поиска
| |
-l33t-h4xx- | Дата: Вторник, 14 Января 2014, 13:53 | Сообщение # 241 | Тема: Вопрос-Ответ (C++) |
участник
Сейчас нет на сайте
| Цитата Destroy ( ) как на С (не С++) сделать массив строк? Ты что там, лабу сдать не можешь? Ай-ай-ай, лекции слушать надо было.
Тут штука тяжёлая: сперва следует выделить память под массив указателей (раз уж массив динамический), а потом каждому указателю выделить память под массив символов. Инициализировать строки придётся с помощью приблуд вроде strcpy. Код const int STR_NUM = 8; const int STR_LEN = 32;
int i; char **str;
str = (char**)malloc(sizeof(char*)*STR_NUM);
for (i = 0; i < STR_NUM; i++) str[i] = (char*)malloc(sizeof(char)*STR_LEN));
Как правильно задавать вопросы
Сообщение отредактировал -l33t-h4xx- - Вторник, 14 Января 2014, 13:56 |
|
| |
-l33t-h4xx- | Дата: Суббота, 11 Января 2014, 16:28 | Сообщение # 242 | Тема: ERROR |
участник
Сейчас нет на сайте
| Shevron_7, ты вообще-то выделил память под строку в три символа. В кейсе ты пытаешься присвоить целую строку переменной типа "символ". Не совсем ясно, что должен делать этот код, не хочешь объяснить?
Я так подумал, ты хотел что-то в этом роде: Код string mass[4] = {"iron", "gold", "silver", "titan"};
Как правильно задавать вопросы
Сообщение отредактировал -l33t-h4xx- - Суббота, 11 Января 2014, 16:40 |
|
| |
-l33t-h4xx- | Дата: Пятница, 10 Января 2014, 17:00 | Сообщение # 243 | Тема: [ООП] Создание и логика врагов |
участник
Сейчас нет на сайте
| Цитата Saitei ( ) Вручную создавать не особо приятно.. А как они должны создаться? По божественному наитию? То, что ты интуитивно предполагаешь, неверно: вместо квадратных скобок прописываются имена объектов, которые создаются сразу после объявления класса. Вручную, именно так, как тебе не хочется (почему-то). Цитата Saitei ( ) виртуальный метод.. Виртуальный метод - это метод, реализация которого возлагается на унаследованный класс. То есть пустышка, которую унаследованный класс обязан заполнить чем-то своим.
Как правильно задавать вопросы
Сообщение отредактировал -l33t-h4xx- - Пятница, 10 Января 2014, 17:01 |
|
| |
-l33t-h4xx- | Дата: Пятница, 10 Января 2014, 16:51 | Сообщение # 244 | Тема: Мудрый миллион. |
участник
Сейчас нет на сайте
| 81. Если предел функции в точке слева равен пределу функции в точке справа и равен значению функции в точке, то говорят, что функция непрерывна в этой точке.
Как правильно задавать вопросы
|
|
| |
-l33t-h4xx- | Дата: Пятница, 10 Января 2014, 06:19 | Сообщение # 245 | Тема: [ООП] Создание и логика врагов |
участник
Сейчас нет на сайте
| Если тебя пугает необходимость обновлять состояние каждого из игровых объектов, то не пугайся: в подавляющем большинстве случаев процессорного времени с лихвой хватает, чтобы обновить хоть сотню объектов между двумя перерисовками экрана. Чтобы не обращаться к каждому отдельному объекту по имени, проще всего, как показал rozen777, занести их в контейнер.
Как правильно задавать вопросы
|
|
| |
-l33t-h4xx- | Дата: Четверг, 09 Января 2014, 10:38 | Сообщение # 246 | Тема: Вопрос-Ответ (C++) |
участник
Сейчас нет на сайте
| voodoo, вот, например, моя змейка на С. Она использует библиотеку curses, но это неважно, главное алгоритм. Вся змейка хранится в виде массива структур, в которых записаны координаты Х и Y. После каждого хода, в зависимости от направления движения, массив смещается назад, а координаты хвоста помещаются на следующую после головы клетку. Код #include <curses.h> #include <malloc.h> #include <stdlib.h>
#define SIZE 128 #define LEFT 1 #define RIGHT 2 #define UP 3 #define DOWN 4
typedef struct { int x; int y; } COORD;
int main(int argc, char *argv[]) { COORD *snake, fruit; int length, i, gameover = 0, tempx, tempy, direction = RIGHT, score = 0; char key;
initscr(); cbreak(); noecho(); halfdelay(2); keypad(stdscr, TRUE); srandom(time(NULL));
snake = (COORD*)malloc(sizeof(COORD)*SIZE);
// Инициализация змеи for (i = 0; i < SIZE; i++) { snake[i].x = -1; snake[i].y = -1; }
snake[2].x = 0; snake[1].x = 1; snake[0].x = 2; snake[0].y = snake[1].y = snake[2].y = 0; length = 2;
// Конец инициализации
fruit.x = fruit.y = 5;
while (!gameover) { key = getch();
tempx = snake[0].x; tempy = snake[0].y;
switch (key) { case 'a': direction = LEFT; break; case 's': direction = DOWN; break; case 'w': direction = UP; break; case 'd': direction = RIGHT;break; } switch (direction) { case LEFT: tempx--; break; case RIGHT: tempx++; break; case DOWN: tempy++; break; case UP: tempy--; break; }
for (i = length; i > 0; i--) { snake[i].x = snake[i-1].x; snake[i].y = snake[i-1].y; }
snake[0].x = tempx; snake[0].y = tempy;
if (snake[0].x == fruit.x && snake[0].y == fruit.y) { length++, score++; snake[length] = snake[length-1]; fruit.x = random()%80; fruit.x = random()%60; }
for (i = 1; i <= length; i++) { if (snake[0].x == snake[i].x && snake[0].y == snake[i].y ) gameover = 1; }
clear();
for (i = 0; i <= length; i++) { move(snake[i].y, snake[i].x); addch('#'); } move(fruit.y, fruit.x); addch('O'); move(0, 0); refresh(); }
return 0; }
Как правильно задавать вопросы
Сообщение отредактировал -l33t-h4xx- - Четверг, 09 Января 2014, 10:38 |
|
| |
-l33t-h4xx- | Дата: Четверг, 09 Января 2014, 08:06 | Сообщение # 247 | Тема: Есть ли смысл? |
участник
Сейчас нет на сайте
| Едва ли почти не тестированный сетевой движок, написанный на коленке за месяц одним энтузиастом, возможно продать. Если только продавать по символической цене, но какой это заработок?
Как правильно задавать вопросы
|
|
| |
-l33t-h4xx- | Дата: Среда, 08 Января 2014, 09:34 | Сообщение # 248 | Тема: Продам ключ Arma 2 OA |
участник
Сейчас нет на сайте
| Цитата shubniggurath ( ) От квартиры где деньги лежат? Сегодня такой юмор уже не в моде.
Как правильно задавать вопросы
|
|
| |
-l33t-h4xx- | Дата: Вторник, 07 Января 2014, 13:19 | Сообщение # 249 | Тема: Подскажите двиг для начинающего с hge проблема |
участник
Сейчас нет на сайте
| Своих настроек, увы, нет, студией не пользуюсь. От себя могу предложить только сочувствите, потому что подключать библиотеки в Visual Studio действительно не так просто.
Как правильно задавать вопросы
|
|
| |
-l33t-h4xx- | Дата: Вторник, 07 Января 2014, 13:08 | Сообщение # 250 | Тема: Подскажите двиг для начинающего с hge проблема |
участник
Сейчас нет на сайте
| Ты должен к ним добавить ещё и (путь к hge)/lib/vc. И приписать hge.lib и hgehelp.lib к списку подключаемых библиотек. Где они в Visual Studio приписываются - понятия не имею, да это ещё и от версии зависит. Руководство лучше всё-таки почитай.
Как правильно задавать вопросы
Сообщение отредактировал -l33t-h4xx- - Вторник, 07 Января 2014, 13:09 |
|
| |
-l33t-h4xx- | Дата: Вторник, 07 Января 2014, 12:49 | Сообщение # 251 | Тема: Подскажите двиг для начинающего с hge проблема |
участник
Сейчас нет на сайте
| Ты библиотеки не подключил. Здесь написано, как правильно линковать библиотеки HGE под Visual Studio.
Как правильно задавать вопросы
|
|
| |
-l33t-h4xx- | Дата: Воскресенье, 05 Января 2014, 12:13 | Сообщение # 252 | Тема: Проблема с паками. Как ими пользоваться? |
участник
Сейчас нет на сайте
| Цитата Drop_Dead_Fred ( ) В инструкции написано В какой интсрукции? Дай нам почитать.
Как правильно задавать вопросы
|
|
| |
-l33t-h4xx- | Дата: Суббота, 04 Января 2014, 10:41 | Сообщение # 253 | Тема: Вот в общем то прочитал статью и задумался |
участник
Сейчас нет на сайте
| Цитата wcpt ( ) prostosdelayetoiuspokoisya(VOID*) Так даже лучше.
Как правильно задавать вопросы
|
|
| |
-l33t-h4xx- | Дата: Суббота, 04 Января 2014, 10:32 | Сообщение # 254 | Тема: GameMaker патчи |
участник
Сейчас нет на сайте
| У тебя какие-то баги или ты принципиально ставишь все патчи, которые находишь?
Как правильно задавать вопросы
|
|
| |
-l33t-h4xx- | Дата: Четверг, 02 Января 2014, 09:58 | Сообщение # 255 | Тема: Интерактивные книги |
участник
Сейчас нет на сайте
| Я думал, тут будет интерактивный роман, а это просто читалка со звуками. Название обещает больше, чем даёт.
Как правильно задавать вопросы
|
|
| |
-l33t-h4xx- | Дата: Среда, 01 Января 2014, 13:19 | Сообщение # 256 | Тема: Идеальная игра для вас? |
участник
Сейчас нет на сайте
| Цитата stalker5889 ( ) То просто симулятор полёта, а я хочу летать на космолете по галактике, торговать, грабить корованы, захватывать корабли В этом году Elite: Dangerous выйдет. Баз там, скорее всего, не будет, но торговля, грабли и полёты гарантированы.
Как правильно задавать вопросы
|
|
| |
-l33t-h4xx- | Дата: Среда, 01 Января 2014, 13:03 | Сообщение # 257 | Тема: Расшифровка CRC32 возможна ли? |
участник
Сейчас нет на сайте
| Это контрольная сумма, а не шифрование. Как md5, если ты слышал о таком. Проверив контрольную сумму, ты можешь проверить, например, передался ли файл по сети с искажениями или без них. Расшифровать исходные данные по CRC-коду едва ли возможно, но он и не для этого создаётся.
Как правильно задавать вопросы
Сообщение отредактировал -l33t-h4xx- - Среда, 01 Января 2014, 13:04 |
|
| |
-l33t-h4xx- | Дата: Понедельник, 30 Декабря 2013, 14:43 | Сообщение # 258 | Тема: Вот в общем то прочитал статью и задумался |
участник
Сейчас нет на сайте
| Цитата vasua99 ( ) Или сама концепция ООП. против самой концепции я не имею ничего против. Цитата vasua99 ( ) Я хочу сказать, что по сути ООП большой костыль, которые придумали обкуренные люди Противоречие. Или ты не понимаешь, о чём говоришь, или ты лицемер, разжигающий срачи. Ни то, ни другое не заслуживает уважения.
Как правильно задавать вопросы
|
|
| |
-l33t-h4xx- | Дата: Понедельник, 30 Декабря 2013, 13:07 | Сообщение # 259 | Тема: Вот в общем то прочитал статью и задумался |
участник
Сейчас нет на сайте
| Большинство больших программ на С спроектированы с применением понятия объекта в том или ином виде. Посмотрите сами: в любой не-ООП библиотеке вам предлагаются структуры данных и функции для их обработки. Всё это в совокупности - в некотором роде расчленённые объекты, просто без инкапсуляции, полиморфизма и прочих наследований.
То есть, само по себе рассуждение в терминах объектов - идея хорошая, её постоянно применяют и получают хорошие результаты даже процедурники. И это не совсем костыль - говорить так, значит считать, что страховка у альпиниста - тоже костыль, и он может без неё обойтись. Разумеется может, но без страховки лезть в высокие горы опасно.
Как правильно задавать вопросы
|
|
| |
-l33t-h4xx- | Дата: Воскресенье, 29 Декабря 2013, 14:16 | Сообщение # 260 | Тема: Panda3D |
участник
Сейчас нет на сайте
| Я пробовал и Panda3D, и Unity3D, но по-настоящему масштабных сцен ни там, ни там не создавал, так что сравнивать их в отношении производительности не могу. С другой стороны известно, что:
1. Unity3D, всё-таки, серьёзный коммерческий продукт, и его разработчики гораздо внимательнее подходят к вопросам оптимизации. 2. Python, в отличие от C#, тратит некоторую часть машинного времени на трансляцию исходного текста в байткод. В большом проекте, в котором за один игровой цикл выполняется очень много кода, это может вызвать понижение производительности. Да и .NET-код всё равно исполняется быстрее.
К тому же Unity лучше уже тем, что предлагает готовые шаблонные решения для различных игровых функций, так что их не приходится реализовывать заново. Panda3D тоже имеет некоторые полезные заготовки, но с нуля написать на нём игру - весьма тяжёлое занятие.
Как правильно задавать вопросы
|
|
| |
|