所以我想在C++中製作一副撲克牌模擬器,我想知道,我應該用什麼,一個矢量或一個數組?我意識到每個人的不同能力,我只是不知道我應該使用哪一種來創造有凝聚力的體驗。我需要這個的原因是因爲我正在製作一個基於文本的遊戲,並且我將在其中製作一個迷你遊戲。矢量與陣列的卡片組
0
A
回答
0
在C++中,每當你看到「我需要存儲一些東西」時,「默認」選項可能應該是vector
或deque
。使用普通數組不是有益的,除非它是超級性能的關鍵。
當然,你將需要幾個集合,比如玩家的手,正在使用的卡,未使用的卡。
使用標準容器類(std::vector
或std::deque
)你有你不需要的優勢,一個單獨的「多卡怎麼做球員X有」,你可以使用player[x] .hand.size()
來確定。 (玩家當然也是收藏類!)
+0
當內存受限且不希望碎片(如嵌入式系統)時,也應使用陣列。 – 2013-04-09 14:06:14
+0
如果它是一個長期存在的集合,並且您使用'reserve'來確定矢量的大小(並且永遠不會增長),那麼碎片就沒有問題。我想說,一個指針的開銷會需要大量的向量來產生很大的不同。 – 2013-04-09 14:12:00
相關問題
- 1. Octave - 比較矩陣的列與矢量
- 2. 將矢量矢量轉換爲斯卡拉的矩陣
- 3. Np個陣列點矢量和陣列
- 4. 旋轉矢量(陣列)
- 5. R - 矢量/陣列加法
- 6. C++矢量指針陣列
- 7. 矢量陣列創建
- 8. 我怎樣才能將兩個矢量組件陣列組合成一個矢量陣列
- 9. 列表(矢量)定義與數組
- 10. 1D矢量和3D陣列的乘法求和的矢量化
- 11. 獲取部分串矢量2D陣列到另一個指針矢量陣列
- 12. 聲明numpy的陣列的列表/矢量/陣列在用Cython
- 13. 創建一個矢量的2D陣列
- 14. Matlab:矢量矩陣的行列式
- 15. 增強std的多元陣列::矢量
- 16. SKLearn矢量陣列的成對距離
- 17. 從矢量減去scipy.sparse矩陣的列
- 18. 轉換的std ::矢量陣列的那麼p /調用編組
- 19. 陣列中的值的子矩陣/矢量隊列
- 20. 矢量陣列是否構成2D矢量?
- 21. 根據1個矢量排序2個陣列/矢量
- 22. numpy的:切片和矢量與一維和二維數組
- 23. 三維矩陣乘法與矢量
- 24. 如何將卡片組與卡片組合在一起?
- 25. 陣列VS矢量,存儲器佈局
- 26. 從矢量陣列調用函數
- 27. 索引到CHOLMOD緻密矢量陣列
- 28. 轉換矢量。 <SomeType>來陣列?
- 29. 確定矢量陣列長度
- 30. 轉換矢量陣列問題
一個(雙端)隊列。 – 2013-04-09 13:51:33
deck - >'deque' ;-)最終用戶的體驗並不取決於選擇,但是您的實施很容易。 – 2013-04-09 13:52:15
你需要在甲板上執行什麼操作? – juanchopanza 2013-04-09 13:52:52