|
7 / 7 / 1
Регистрация: 21.01.2013
Сообщений: 55
|
||||||||||||||||
Как создать элемент вектора пользовательского типа(класса)?17.03.2013, 18:33. Показов 2241. Ответов 7
Метки нет (Все метки)
Делаю змейку в консоли, а по сути тренируюсь с классами и векторами.
Есть класс с конструктором который создает кусок змейки в конкретном направлении от координат головы змеи Кликните здесь для просмотра всего текста
Есть координаты головы змеи которые будут изменяться по адресу внутри конструктора при создании нового элемента змеи, и есть направление:
0
|
||||||||||||||||
| 17.03.2013, 18:33 | |
|
Ответы с готовыми решениями:
7
Как передать в коллекцию объект класса или пользовательского типа?
Как создать шаблон для пользовательского и встроенного типа? |
|
328 / 327 / 92
Регистрация: 16.12.2012
Сообщений: 544
|
||||||
| 17.03.2013, 18:43 | ||||||
0
|
||||||
|
7 / 7 / 1
Регистрация: 21.01.2013
Сообщений: 55
|
|||||||
| 17.03.2013, 19:11 [ТС] | |||||||
|
А можно как-то так:
0
|
|||||||
|
328 / 327 / 92
Регистрация: 16.12.2012
Сообщений: 544
|
||||||
| 17.03.2013, 19:24 | ||||||
|
не думаю, что так стоит делать. Этот элемент будет просто добавляться в вектор. И никуда он оттуда не денется.
Кстати, надо исправить
0
|
||||||
|
7 / 7 / 1
Регистрация: 21.01.2013
Сообщений: 55
|
||||||
| 18.03.2013, 00:06 [ТС] | ||||||
|
Ниче не пойму. Вот весь код:
Кликните здесь для просмотра всего текста
Вот что пишет компилятор: Кликните здесь для просмотра всего текста
1>------ Build started: Project: Snake, Configuration: Debug Win32 ------
1> Snake.cpp 1>f:\users\collspack\documents\visual studio 2010\projects\snake\snake\snake.cpp(18): warning C4018: '<' : signed/unsigned mismatch 1>f:\users\collspack\documents\visual studio 2010\projects\snake\snake\snake.cpp(20): error C2027: use of undefined type 'SnakePart' 1> f:\users\collspack\documents\visual studio 2010\projects\snake\snake\snake.cpp(11) : see declaration of 'SnakePart' 1>f:\users\collspack\documents\visual studio 2010\projects\snake\snake\snake.cpp(20): error C2228: left of '.getLocationX' must have class/struct/union 1>f:\users\collspack\documents\visual studio 2010\projects\snake\snake\snake.cpp(20): error C2027: use of undefined type 'SnakePart' 1> f:\users\collspack\documents\visual studio 2010\projects\snake\snake\snake.cpp(11) : see declaration of 'SnakePart' 1>f:\users\collspack\documents\visual studio 2010\projects\snake\snake\snake.cpp(20): error C2228: left of '.getLocationY' must have class/struct/union 1>f:\users\collspack\documents\visual studio 2010\projects\snake\snake\snake.cpp(56): error C2514: 'SnakePart' : class has no constructors 1> f:\users\collspack\documents\visual studio 2010\projects\snake\snake\snake.cpp(11) : see declaration of 'SnakePart' ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== В чем дело? Как понять что класс без конструктора если он с конструктором? И вообще он сильно ругается на 20 строку...
0
|
||||||
|
Неэпический
|
|||||||
| 18.03.2013, 00:34 | |||||||
В DrawScreen лучше передавать ссылку на вектор Добавлено через 1 минуту
1
|
|||||||
|
7 / 7 / 1
Регистрация: 21.01.2013
Сообщений: 55
|
||||||
| 18.03.2013, 17:24 [ТС] | ||||||
|
Кое что опять не так... Сделал все как положено, все компилируется, программа запускается но после отрисовки игровой зоны появляется окно с этим:
Unhandled exception at 0x77b415de in Snake.exe: 0xC0000005: Access violation. Смотрю на консоль, отрисовался массив обведенный #, но в него почему то не забилась сама змейка... Вот весь код. Кликните здесь для просмотра всего текста
По идее должна была хотябы отрисоваться змейка по координатам х=6 у=5...
0
|
||||||
|
328 / 327 / 92
Регистрация: 16.12.2012
Сообщений: 544
|
||||||
| 18.03.2013, 17:39 | ||||||
1
|
||||||
| 18.03.2013, 17:39 | |
|
Помогаю со студенческими работами здесь
8
Удаление элемента из вектора пользовательского класса Очистка вектора объектов пользовательского класса Как создать STL stack объектов пользовательского класса?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем.
. . .
|