如何在C++中创建for循环类命令? 我想在C++中做一些简单的事情,但我找不到。 我想创建一个类似for循环的函数,理想情况下,我会在迭代应该发生的时间输入一个变量,并在括号内输入函数将执行的一些函数。我希望我说得够清楚了。谢谢
范例如何在C++中创建for循环类命令? 我想在C++中做一些简单的事情,但我找不到。 我想创建一个类似for循环的函数,理想情况下,我会在迭代应该发生的时间输入一个变量,并在括号内输入函数将执行的一些函数。我希望我说得够清楚了。谢谢,c++,function,C++,Function,范例 superFor (1) { //commands to be executed here add(1+2); } 是吗?那不可能。。太简单了。。我一定是误解了你的问题: 当然,您必须检查numTimesToLoop的值是否大于等于0 编辑:我把它当成了一个方法。< /p> C++中不可能的东西,因为语言的当前版本缺少这里需要的一些特征:即,“创建”功能块“即时”。 最好是将函数指针或函数对象传递给函数。STL提供了许多这样的例子。考虑: void out(int x) {
superFor (1)
{
//commands to be executed here
add(1+2);
}
是吗?那不可能。。太简单了。。我一定是误解了你的问题:
当然,您必须检查numTimesToLoop的值是否大于等于0
<>编辑:我把它当成了一个方法。< /p> C++中不可能的东西,因为语言的当前版本缺少这里需要的一些特征:即,“创建”功能块“即时”。 最好是将函数指针或函数对象传递给函数。STL提供了许多这样的例子。考虑:
void out(int x) {
cout << x << ' ';
}
vector<int> xs;
xs.push_back(42);
xs.push_back(23);
for_each(xs.begin(), xs.end(), out);
这会将指向函数的指针传递给函数
编辑:小心不要在循环中使用另一个名为i的变量。可能BOOST\u FOREACH会执行您想要的操作: 你可以使用宏
#define superFor(v,i) for(int v=0; v<(i); v++)
这很疯狂,但它可能只是工作
在C++中,你用正则for循环来做这个。< /P>
for(variable; condition; increment) {
//stuff goes here
}
在for循环中:
变量是像i一样的计数变量。您可以在这里定义变量并初始化它。您经常会看到类似int i=0的内容
条件是某种测试。在本例中,您需要检查计数变量是否小于希望循环执行的次数。你会把我<多少次>这样的东西放到循环中
increment是递增计数变量的命令。在您的例子中,您需要i++,这是表示i=i+1的简写方式
这就给了我们:
for(int i = 0; i < how_many_times_to_loop; i++) {
//stuff goes here
}
这是一个非常奇怪的请求,为什么不写一个for循环呢?我想说是宏,但我想知道你为什么要先做这个。闻起来像是家庭作业。。。你能告诉我们你到目前为止试过什么吗?括号内的一些函数是什么意思?我的函数我想提问者的问题来自另一种语言,其中for结构类似于for每种类型的结构,所以这只是一个简单的语法问题。你的意思是你想在for循环中传递要运行多少次以及要运行哪些函数?是的,标准for循环或STL for_都比cpp宏更受欢迎。
superFor(i,10) {
printf("Doing something ten times");
}
for(variable; condition; increment) {
//stuff goes here
}
for(int i = 0; i < how_many_times_to_loop; i++) {
//stuff goes here
}