[問題] for次數如何更新?

作者: kevinqazwsx (Irean)   2016-01-06 04:01:46
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
Gcc
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
stl
問題(Question):
for次數如何隨表單量更新
小弟我目前遇到一個瓶頸
EX:
vector<double> list;
for(int i=0;i<list.size();i++){
XX(副程式);
}
問題在於進入for迴圈時list.size()就被限制住了,可是我的副程式會一直去更動
list.size()的大小
要用何種想法
才可以改善 list.size()可以每run一次副程式就更新
例如一開始進入for
list.size()=5;
可是後來副程式經過運算
可能會變成
list.size()=9;
可是for迴圈不會跑9次
拜託高手解答了!
作者: grayStone (灰色石頭)   2016-01-06 04:27:00
while
作者: qas612820704 (Lego)   2016-01-06 04:42:00
while loop?
作者: lucky1lk (賭到沒錢的人)   2016-01-06 08:00:00
if?
作者: LPH66 (-6.2598534e+18f)   2016-01-06 08:47:00
你的 list 在哪?有傳入 XX() 裡嗎?怎麼傳的?我有點想猜你用 pass by value 傳 list 進 XX 裡這樣你在 XX 外面的 list 根本就沒動過, size() 自然不變不然當 list 有被其他程式改變的可能時 size() 不該不變如果真是這樣的話請改用 pass by reference 傳進去 XX 裡
作者: Caesar08 (Caesar)   2016-01-06 11:37:00
就算你的XX會呼叫list::erase,用<比較也可以才對應該是如同LPH66講的那樣吧
作者: grayStone (灰色石頭)   2016-01-06 11:50:00
對耶應該是樓上說的list沒更新,不是要while
作者: andrenvq57 (喂!威,喂?)   2016-01-06 12:35:00
i<list.size()每圈都會重算

Links booklink

Contact Us: admin [ a t ] ucptt.com