如何在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
  }