Вопрос-Ответ (C++)
|
|
Kornival | Дата: Воскресенье, 04 Сентября 2011, 19:10 | Сообщение # 1 |
The Witcher
Сейчас нет на сайте
| Чтобы не создавать отдельную тему на каждый глупый вопрос, предлагаю задавать их здесь.
Saitei: все вопросы по С задаём в теме Вопрос-Ответ (С). Благодарю за внимание!
|
|
| |
Animan2010 | Дата: Пятница, 11 Января 2013, 11:40 | Сообщение # 821 |
постоянный участник
Сейчас нет на сайте
| Спс, Нохчи Кстати, а как теперь объявить производный класс от cScene и вынести его в отдельный хидер? А то опять проблемы возникают
Anima Games Animan Publishing
|
|
| |
Нохчи | Дата: Пятница, 11 Января 2013, 16:04 | Сообщение # 822 |
заслуженный участник
Сейчас нет на сайте
| Animan2010, у тебя в cSceneManager есть класс в cScene, в cScene класс cSceneManager. Такая рекурсия не есть гуд. Просто пересмотри архитектуру менеджера.
Многие вопросы по Windows отпадут, если посмотреть тут
|
|
| |
Animan2010 | Дата: Пятница, 11 Января 2013, 18:33 | Сообщение # 823 |
постоянный участник
Сейчас нет на сайте
| Со сценами разобрался, поставил include нужных файлов до #pragma once; Теперь ещё одна проблема ;( Почему файл scenemenu.h
Не отображает текстуру при render'е, хотя main.cpp делает это без проблем? Отрывок main.cpp:
bool render_func() { hge->Gfx_BeginScene(); hge->Gfx_Clear(0); scene_manager->render(); //В scene_manager->render() происходит scene_menu->render() //spr->Render(0,0); //Этот спрайт с текстурой texture_menu, которая находится в textures.h. Если убрать комментирование, то отображает текстуру. hge->Gfx_EndScene(); return false; }
Вопрос решен - конструктор сцены меню был вызван до загрузки ресурсов х_х
Anima Games Animan Publishing
Сообщение отредактировал Animan2010 - Пятница, 11 Января 2013, 19:00 |
|
| |
MR_Borg | Дата: Пятница, 11 Января 2013, 18:50 | Сообщение # 824 |
участник
Сейчас нет на сайте
| Товарищи, есть ли тут знатоки библиотеки FreeImage? Конкретно меня интересует как считать цвета пикселей в массив?
Изучаю C++ попутно пишу игру.
|
|
| |
gansterm | Дата: Суббота, 12 Января 2013, 17:37 | Сообщение # 825 |
частый гость
Сейчас нет на сайте
| del
Сообщение отредактировал gansterm - Суббота, 12 Января 2013, 17:37 |
|
| |
stalker5889 | Дата: Суббота, 09 Марта 2013, 10:30 | Сообщение # 826 |
Свободный игродел
Сейчас нет на сайте
| Двойная буферизация в консоли Как сделать двойную буферизацию в консоли? Нужна просто функция вывода двухмерного массива на экран, все изменения делаются в других местах. Сейчас юзаю: Код void Draw()//рисование {setcur(0,2);//установка курсора в начало for(int y=0;y<h;y++) { for(int x=0;x<w;x++) { cout<<map[x][y]; // печатаем таблицу } cout<<"\n";}} void setcur(int x, int y)//установка курсора на позицию { COORD coord; coord.X = x; coord.Y = y; SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), coord); } При этом в маленький массив работает без проблем, а на большом появляются лаги и видна прорисовка.
|
|
| |
nilrem | Дата: Суббота, 09 Марта 2013, 11:08 | Сообщение # 827 |
Просветленный разум
Сейчас нет на сайте
| stalker5889, Используй сишный вывод (printf), он работает минимум в 30 раз быстрее.
Windmill 2
WindMill 2D Game Engine
|
|
| |
stalker5889 | Дата: Суббота, 09 Марта 2013, 11:20 | Сообщение # 828 |
Свободный игродел
Сейчас нет на сайте
| nilrem, никогда не юзал его, не получается вывести массив map[x][y].
Сообщение отредактировал stalker5889 - Суббота, 09 Марта 2013, 17:45 |
|
| |
geralex | Дата: Понедельник, 11 Марта 2013, 17:25 | Сообщение # 829 |
участник
Сейчас нет на сайте
| Подскажите, на форме есть радио кнопки. В коде ведется лог (new StreamWriter) как добавить в имя сохраняемого файла имя выбранной радио кнопки??
Код \logs_" + DateTime.Now.ToString("dd-MM-yyyy hh-mm-ss") + ".txt"
|
|
| |
Noterstone | Дата: Пятница, 15 Марта 2013, 14:14 | Сообщение # 830 |
участник
Сейчас нет на сайте
| Занимаюсь программированием С++, новичок. Вот хочу спросить как делать оконные приложения, просто в консоли уже не так интересно. Если есть какие то книги по этому то дайте название или ещё лучше ссылку. С меня + Добавлено (15.03.2013, 14:14) --------------------------------------------- Такое ощущение что все вымерли
|
|
| |
Archido | Дата: Пятница, 15 Марта 2013, 14:40 | Сообщение # 831 |
Сэнсэй
Сейчас нет на сайте
| Так такое блин гуглится за 5 мин
Какая среда разработки? Если MSVS - то прямо там же можно и создавать GUI, раскидывая по форме различные контроллы. Но я бы, правда, вместо MFC посоветовал сразу начинать с Qt - толку будет больше. Единственное, что если знания пока только базовые - оно, вероятно, может показаться сложным. Тут есть несколько книженций по нему... если хочется, то можно и по MFC нагуглить вполне.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Noterstone | Дата: Пятница, 15 Марта 2013, 14:54 | Сообщение # 832 |
участник
Сейчас нет на сайте
| А мне интереснее у вас спросить
|
|
| |
Animan2010 | Дата: Воскресенье, 31 Марта 2013, 14:37 | Сообщение # 833 |
постоянный участник
Сейчас нет на сайте
| Всем привет) Возник вопрос: Запихнул в std::list<hgeSprite*> несколько указателей на hgeSprite, но не могу вызвать метод hgeSprite'а Render(х,у).
for(std::list<hgeSprite*>::iterator it = _list.begin(); it != _list.end(); it++) { it->Render(0,0); }
В чем проблема? Выдает error C2039: 'Render' : is not a member of 'std::list<_Ty>::_Iterator<_Secure_validation>
Anima Games Animan Publishing
|
|
| |
RUNGOGET2THECHOPAH | Дата: Воскресенье, 31 Марта 2013, 14:51 | Сообщение # 834 |
участник
Сейчас нет на сайте
| Animan2010, нужно так: (*it)->Render(0,0); Итератор - по сути указатель на то, что лежит в текущем звене списка, т.е. в твоем случае это указатель на указатель на hgeSprite.
|
|
| |
Animan2010 | Дата: Среда, 10 Апреля 2013, 21:32 | Сообщение # 835 |
постоянный участник
Сейчас нет на сайте
| RUNGOGET2THECHOPAH, спасибо, заработало =) Я уже пробовал разыменовать указатель, но не добавил скобки, поэтому получил ту же ошибку)Добавлено (10.04.2013, 21:32) --------------------------------------------- Возможно, это у меня одного глюки такие, но хотелось бы узнать, почему в Visual C++ 2008 глючит intellisense? К примеру:
HGE* hge; function func() { hge->//Тут разыменуем указатель и интеллисенс хорошо показывает список всех функций и свойств //Далее, допустим, пишем условие if(chto-to-tam) { hge->//А вот тут уже интеллисенс нифига не открывается и внизу ide написано что-то про "интеллисенс не понимает, что вы от него хотите, смотрите в справку".
Если покликать тут и там, через секунд 20 интеллисенс снова будет нормально работать. Несмертельно, конечно, но я пока ещё изучаю движок, поэтому не уверен в названии некоторых функций
Anima Games Animan Publishing
|
|
| |
Нохчи | Дата: Четверг, 11 Апреля 2013, 01:00 | Сообщение # 836 |
заслуженный участник
Сейчас нет на сайте
| Попробуй удалить *.ncb файл. Это заставит intellisense заново проанализировать весь код. Иногда помогает.
Многие вопросы по Windows отпадут, если посмотреть тут
|
|
| |
Animan2010 | Дата: Четверг, 11 Апреля 2013, 17:08 | Сообщение # 837 |
постоянный участник
Сейчас нет на сайте
| Не помогло =( На code::blocks может перейти, или новую студию
Anima Games Animan Publishing
|
|
| |
x_X | Дата: Пятница, 26 Апреля 2013, 02:30 | Сообщение # 838 |
был не раз
Сейчас нет на сайте
| Animan2010, юзай плагин Visual Assist
|
|
| |
Deswing | Дата: Понедельник, 29 Апреля 2013, 18:18 | Сообщение # 839 |
заслуженный участник
Сейчас нет на сайте
| как лучше осуществлять суммирование чисел? Вот так: Код #include <iostream> #include <conio.h> #define sum(a,b) a+b using namespace std;
void main() { cout<<sum(3,4); _getch(); } или через эту функцию: Код int sum(a,b) { return a+b; } ?Добавлено (29.04.2013, 18:18) --------------------------------------------- и для чего нужен #undef? Я как понял, для того чтобы "забыть", "стереть" значение переменной, которая была установлена в #define. Но на практике НУ СОВСЕМ не могу понять как применить. Пожалуйста, помогите разобраться
|
|
| |
RUNGOGET2THECHOPAH | Дата: Понедельник, 29 Апреля 2013, 18:39 | Сообщение # 840 |
участник
Сейчас нет на сайте
| Deswing, лучше сразу писать 3 + 4 там, где надо.
|
|
| |