[问题] 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