[問題] vector VS array 速度比較

看板C_and_CPP (C/C++)作者 (小豆豆)時間15年前 (2011/02/01 17:24), 編輯推噓4(409)
留言13則, 5人參與, 最新討論串1/3 (看更多)
現在在看別人的 code 裡面完全都使用 動態陣列來存放東西 小弟自己做的話通常會使用 vector 上網爬了一下文 好像用動態陣列速度會比較快 又有人說 vector只有在插入時效能才會下降 如果是存取的話速度是跟陣列一樣的 想請教一下各位大大的看法 不知道陣列跟vector在存取時速度的快與慢如何 -- 拿阿! 拿回去還是一輩子當x教授的魁儡 一輩子做實習 寫程式 要的話你就拿回去! 九世宅男:下輩子不要再讓我讀工科~~~~~~~~!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 124.12.57.186

02/01 18:08, , 1F
侯捷《STL源碼剖析》應可解決你大部分的問題
02/01 18:08, 1F

02/01 18:13, , 2F
不過先自己學學實作動態陣列, 就會知道差別在哪
02/01 18:13, 2F

02/01 18:14, , 3F
一般來說裡面除了指標跟內建型態, 放其他東西都不會多
02/01 18:14, 3F

02/01 18:14, , 4F
快(因為頻繁的建構/解構)
02/01 18:14, 4F

02/01 18:24, , 5F
推 <<STL 源碼剖析>>
02/01 18:24, 5F

02/01 21:25, , 6F
先求正確,再求快
02/01 21:25, 6F

02/01 21:30, , 7F
存取vector通常不是效能瓶頸
02/01 21:30, 7F

02/01 21:30, , 8F
但自行用動態陣列管理記憶體通常會花很多時間去debug
02/01 21:30, 8F

02/01 21:31, , 9F
同樣的時間你拿去改善程式的其它部份 效益通常更大
02/01 21:31, 9F

02/01 21:35, , 10F
這邊有別人測試的結果給你看看
02/01 21:35, 10F

02/01 21:36, , 11F
02/01 21:36, 11F

02/01 21:40, , 12F
節錄結果: 兩者的效能沒有差別
02/01 21:40, 12F

02/02 00:05, , 13F
源碼剖析那本還躺在小弟的書櫃生灰塵....Orz
02/02 00:05, 13F
文章代碼(AID): #1DHz4wKh (C_and_CPP)
文章代碼(AID): #1DHz4wKh (C_and_CPP)