基于范围的for函数中的循环

时间:2014-10-09 17:44:38

标签: arrays function c++11 for-loop

我在C中编程了一段时间,现在我是C ++的新手。我必须用C ++ 11的基于范围的for循环替换C-Programm中的for循环。 这是实际的代码:

 void sort1(int num[], int start, int end) {
  int finished = 0, i;

  while(!finished) {
    finished = 1;
    for(i=start ; i<end ; i++) {
      if(num[i] > num[i+1]) {
        swap(num, i, i+1);
        finished = 0;
      }
    }
  }
}

这就是我改为:

void sort1(int num[], int start, int end) {
  bool finished = 0;

  while(!finished) {
    finished = 1;
    for(int i : num) {
      if(i > i+1) {
        swap(num, i, i+1);
        finished = 0;
      }
    }
  }
}

我甚至无法编译它,它给了我错误: 错误:没有匹配函数来调用'begin(int *&amp;)'

(对不起,如果我的英语有点奇怪:D)

0 个答案:

没有答案