討論串[問題] 不傾向使用std::vector的原因
共 5 篇文章
首頁
上一頁
1
下一頁
尾頁

推噓4(4推 0噓 15→)留言19則,0人參與, 最新作者Arton0306 (Ar藤)時間13年前 (2012/11/04 22:26), 編輯資訊
0
0
0
內容預覽:
之前的工作有遇過一個不用vector會比較好的情況. 這個情況就是:. 一、我們在run time才知道有多少元素. 二、我們需要節省記憶體. 三、這個container中的元素數決定後就固定不變,所以不用push_back...等的. 我們在amd64的環境中。vector它為了動態增減元素,內部
(還有203個字)

推噓2(2推 0噓 1→)留言3則,0人參與, 最新作者littleshan (我要加入劍道社!)時間13年前 (2012/11/04 17:51), 編輯資訊
0
0
0
內容預覽:
這是兩回事吧. memory pool 是為了快速配置物件的記憶體空間. vector 是為了管理動態大小的陣列. 兩者負責不一樣的任務. 而且 vector 允許你使用自己的 memory allocator. 所以你可以寫一個 memory pool 來給 vector 使用. 甚至要把其他人寫
(還有243個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者Killercat (殺人貓™)時間13年前 (2012/11/04 16:08), 編輯資訊
0
0
0
內容預覽:
還有兩個比較沒被拉出來討論的原因. 第一個就是前面提到的embedded system, 這點可能要講詳細點. embedded system如果用c++的話,由於系統特性的關係. 很多東西都會選擇使用memory pool技術而非vector. memory pool的話,我個人也是傾向於不要自己
(還有304個字)

推噓4(4推 0噓 10→)留言14則,0人參與, 最新作者chchwy (mat)時間13年前 (2012/11/03 19:51), 編輯資訊
0
0
1
內容預覽:
http://codepad.org/jb4Gksbm. 這隻小程式可以說明vector實際上使用記憶體的狀況. 藏在vector底下的並非魔術. 只是把普通的動態分配記憶體給包裝起來. 省下自己手動管理的麻煩而已. 當vector恰好持有4個元素大小的記憶體. 而你又想要插入第五個元素時,vect
(還有310個字)

推噓3(3推 0噓 13→)留言16則,0人參與, 最新作者QHsin (Q馨)時間13年前 (2012/11/03 13:43), 編輯資訊
0
0
0
內容預覽:
開發平台(Platform): (Ex: VC++, GCC, Linux, ...). Linux VC++. 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...). C++ Standard Library(C++標準程式庫). C++ Standard Temp
(還有689個字)
首頁
上一頁
1
下一頁
尾頁