C++ For 命令中预增量 (++i) Delphi 的等价物是什么?
What equivalent in Delphi of pre-increment (++i) in C++ For command?
在这个 c++ sintaxe 的 Delphi 中有什么等价物?
See that i variable is incremented before.
for(int i = 0; i < 20; ++i)
提前致谢。
编辑:
在我的例子中,这就是 ++i 与上面的 sintaxe 一起使用的方式:
void testStruct *testMethod()
{
for(int i = 0; i < 20; ++i)
{
if(values[i].id == (DWORD) 10)
return &values[i];
}
return NULL;
}
for(int i = 0; i < 20; ++i)
预增量与post-增量在这里无关。从语义上讲,这与
相同
for(int i = 0; i < 20; i++)
在 Delphi 这将是
for i := 0 to 19 do
在使用变量值的表达式中,预递增很重要。例如
x[++i] = 42;
不同于
x[i++] = 42;
因为 ++i
的值与 i++
的值不同。然而,在您的 C++ for 循环中,预递增运算符仅用于递增循环变量,不使用表达式的值。
为了清楚起见,如果 i
是 0
,那么 ++i == 1
和 i++ == 0
。但是在C++循环中,并没有使用自增表达式的值,唯一的一点就是自增的副作用。
在这个 c++ sintaxe 的 Delphi 中有什么等价物?
See that i variable is incremented before.
for(int i = 0; i < 20; ++i)
提前致谢。
编辑:
在我的例子中,这就是 ++i 与上面的 sintaxe 一起使用的方式:
void testStruct *testMethod()
{
for(int i = 0; i < 20; ++i)
{
if(values[i].id == (DWORD) 10)
return &values[i];
}
return NULL;
}
for(int i = 0; i < 20; ++i)
预增量与post-增量在这里无关。从语义上讲,这与
相同for(int i = 0; i < 20; i++)
在 Delphi 这将是
for i := 0 to 19 do
在使用变量值的表达式中,预递增很重要。例如
x[++i] = 42;
不同于
x[i++] = 42;
因为 ++i
的值与 i++
的值不同。然而,在您的 C++ for 循环中,预递增运算符仅用于递增循环变量,不使用表达式的值。
为了清楚起见,如果 i
是 0
,那么 ++i == 1
和 i++ == 0
。但是在C++循环中,并没有使用自增表达式的值,唯一的一点就是自增的副作用。