Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.118.29.224] |
|
Сообщ.
#1
,
|
|
|
как лучше всего организовать работу со списками в VB 6.0 ?
То есть, мне нужно добавлять элементы, убирать элементы и тыпы. Сами элементы могут иметь сложную структуру- и с этим тоже небольшой вопрос: как, блин, сделать нормальную запись типа сишного Record? --- раздел вскользь просмотрел + посмотрел VB6 FAQ, ответа не нашёл. Добавлено упс! record- это в Delphi, в С/C++ это struct. |
Сообщ.
#2
,
|
|
|
Collection
Type |
Сообщ.
#3
,
|
|
|
Цитата Akina @ Collection а чего не массивы? Цитата Akina @ Type это- да. это я понял и согласен. |
Сообщ.
#4
,
|
|
|
Цитата ya2500 @ а чего не массивы? Убирать элемент из середины массива достаточно муторно. |
Сообщ.
#5
,
|
|
|
В-общем, надо будет курить коллекции
https://msdn.microsoft.com/ru-ru/library/yb...#code-snippet-1 Спасибо. Вопрос считаю решённым. |
Сообщ.
#6
,
|
|
|
Цитата ya2500 @ В-общем, надо будет курить коллекции https://msdn.microsoft.com/ru-ru/library/yb...#code-snippet-1 Приведенная ссылка не актуальна для VB6. В .NET другие коллекции. И я, кстати, хотел бы посоветовать обдумать решение изучать сейчас VB6 ради разработки игры. Лет 10 назад это было бы вполне логично и актуально, сейчас это практически непростительная трата временных ресурсов на изучение устаревшей технологии. |
Сообщ.
#7
,
|
|
|
Цитата B.V. @ кстати, хотел бы посоветовать обдумать решение изучать сейчас VB6 ради разработки игры. Ради разработки ИГР в будущем - не стоит, конечно. Ради разработки ИГРЫ в качестве развлечения - почему бы и нет? В будущем, если "затянет", можно будет сменить язык, а знакомство с VB поможет быстрее разобраться с тем же шарпом. На счёт коллекций - в применении именно к играм, например для учёта всех летящих пуль, это подходит плохо, слишком тяжеловесное решение. |
Сообщ.
#8
,
|
|
|
Цитата Mikle @ в применении именно к играм, например для учёта всех летящих пуль, это подходит плохо, слишком тяжеловесное решение. А для всякоразного дерьма в инвентаре очень даже ничего... Да и для пуль тоже подходит, если пуля по внутреннему программному устройству полноценный объект, а не просто структура данных. И коллекции опять же бывают несортированные, и тогда что там накладных расходов? |
Сообщ.
#9
,
|
|
|
Цитата Akina @ И коллекции опять же бывают несортированные, и тогда что там накладных расходов? Выделение-освобождение памяти на каждое добавление-уничтожение пули. Цитата Akina @ если пуля по внутреннему программному устройству полноценный объект, а не просто структура данных. Я предпочитаю как раз структуру. Цитата Akina @ А для всякоразного дерьма в инвентаре очень даже ничего Согласен. |
Сообщ.
#10
,
|
|
|
Цитата Mikle @ Выделение-освобождение памяти на каждое добавление-уничтожение пули. А в массиве типа нет? Если поддерживать массив компактным - то тут тебе сплошь выделение/уничтожение, как у коллекции, да ещё плюс копирование. Так что выигрыш будет исключительно в случае разреженного массива, который мало чем отличается от коллекции - тоже требует над-массива указателей. Цитата Mikle @ Я предпочитаю как раз структуру. А вот структура имхо проигрывает объекту - в последнем случае не нужно заботиться о базе. |
Сообщ.
#11
,
|
|
|
Цитата Akina @ А в массиве типа нет? Создаётся массив ДОСТАТОЧНОГО размера, счётчик пуль. При добавлении пули помещаем её но индексу счётчика и счётчик инкрементируем. При уничтожении пули перемещаем пулю с последним индексом (равен счётчику минус один) на индекс удаляемой, декрементируем счётчик. |
Сообщ.
#12
,
|
|
|
Цитата B.V. @ , кстати, хотел бы посоветовать обдумать решение изучать сейчас VB6 ради разработки игры. Цитата Mikle @ Ради разработки ИГР в будущем - не стоит, конечно. Ради разработки ИГРЫ в качестве развлечения - почему бы и нет? В будущем, если "затянет", можно будет сменить язык, а знакомство с VB поможет быстрее разобраться с тем же шарпом. Честно говоря, VB действительно кажется мне немножко слишком особенным. НО, в данном случае, хорошо понятно, как начать делать игру. Я бы предпочёл C++. Если кто может посоветовать, как так же просто начать делать свою 3d игру на C++, добро пожаловать с вашими советами сюда: raise of ya2500 (сообщение #3648273) И, возможно, есть смысл изучать С# (для использования с NeoAxis). Но русскоязычный форум NeoAxis показался мне почти дохлым. Добавлено Цитата ya2500 @ Если кто может посоветовать, как так же просто начать делать свою 3d игру на C++, добро пожаловать с вашими советами сюда: Немного погуглив, решил присмотреться к SFML-библиотеке. |