Итак, я пытаюсь сделать симулятор колоды карт на C++, и мне было интересно, что я должен использовать, вектор или массив? Я знаю разные способности каждого, я просто не знаю, что я должен использовать, чтобы сделать сплоченный опыт. Причина, по которой я нуждаюсь в этом, - это то, что я делаю текстовую игру, и у меня будет мини-игра в покер.Vector vs. Array for Deck of Cards
ответ
В C++ выбор по умолчанию должен быть либо vector
, либо deque
всякий раз, когда вы смотрите на «Мне нужно сохранить несколько вещей». Использование простого массива не выгодно, если только оно не является критическим.
Конечно, вам понадобятся несколько коллекций, таких как рука игрока (ов), используемые карты, карты не используются.
Использование стандартного класса контейнера (std::vector
или std::deque
) у вас есть то преимущество, что вам не нужно отдельно «сколько карт делает игрок X есть», вы можете использовать player[x] .hand.size()
, чтобы определить, что. (Игроки, конечно же, также являются коллекционным классом!)
Массивы также должны использоваться, когда память ограничена, а фрагментация нежелательна, например встроенные системы. –
Если это долговечная коллекция, и вы используете 'reserve' для того, чтобы размер вектора начинался с [и никогда не расти], нет никакой проблемы с фрагментацией как таковой. Я бы сказал, что накладные расходы одного указателя потребуют огромного количества векторов. –
- 1. A Deck of Cards
- 2. C++ Array vs vector
- 3. Vector vs Array Performance
- 4. stl vector vs array
- 5. C++ Vector vs Array (Время)
- 6. vector vs. array в C++
- 7. std :: vector vs normal array
- 8. JQuery Stack of Cards
- 9. Vector. <> Vs array
- 10. Array of Structs Инициализация
- 11. C++ 11 std :: array vs static array vs std :: vector
- 12. std :: array vs std :: vector тонкая разница
- 13. C++ Array vs Vector performance test explain
- 14. Карта вектора struct vs Vector of struct
- 15. Производительность DIM1 Repa Array vs Vector
- 16. Vector vs Array для большого количества элементов?
- 17. Java ArrayList Deck Class
- 18. AS3 Vector of Arrays
- 19. Dealing cards in Javascript
- 20. Flash CS4 [AS3]: Playk Card Deck Array
- 21. Array in wipe cards Получение первого элемента
- 22. Python append to array vs replace array of zeros
- 23. json object vs array of objects
- 24. 1D Vector to Multi-array array/Vector
- 25. Check for Empty on Array of String
- 26. Array of Date with for loop
- 27. Array Index out of Bound Exception for return Char Array
- 28. border set like stack of cards
- 29. Pop vector of int from vector
- 30. Chunking vector of strings
A (двухсторонняя) очередь. –
deck -> 'deque' ;-) Опыт конечного пользователя не зависит от выбора, однако ваша простота в реализации. –
Какие операции необходимо выполнять на палубе? – juanchopanza