Delphi中的for循环:
var
s: TStringList;
i: Integer;
begin
s :
=
TStringList.Create;
s.Add(
'
a
'
);
s.Add(
'
b
'
);
for
i :
=
0
to s.Count
do
s.Add(
'
c
'
);
end;
VC++中的for循环:
#include
<
vector
>
using
namespace
std;
vector
<
string
>
vt;
vt.push_back(
"
a
"
);
vt.push_back(
"
b
"
);
for
(
int
i
=
0
;i
<
vt.size();
++
i)
{
vt.push_back("c");
}
类似的代码,但是执行的效果却不同。
Delphi下的代码不会死循环,循环两次,正常退出。
而VC++下的代码会死循环,不能正常退出。
原因是Delphi在处理for循环之前,循环次数已经确定,
而VC++中的循环次数是在循环之后确定。










VC++中的for循环:









类似的代码,但是执行的效果却不同。
Delphi下的代码不会死循环,循环两次,正常退出。
而VC++下的代码会死循环,不能正常退出。
原因是Delphi在处理for循环之前,循环次数已经确定,
而VC++中的循环次数是在循环之后确定。
