#include <iostream>
#include <array>
using namespace std;
typedef int type;
typedef array <type,6> Liste;
bool appartient(type element, Liste liste);
int main()
{
Liste maliste = {4,5,-3,12,7,-33};
cout << appartient(13, maliste) << endl;
cout << appartient(12, maliste) << endl;
return 0;
}
bool appartient(type x, Liste liste)
{
for (auto element: liste) { //////this line!!!!!!!
if (x == element) return true;
}
return false;
}
我正在用C++进行表格的练习。在这里,我正在编写一个功能“装置”,以验证列表中某个元素的装置。但是我在这种功能上有一些错误:
1 /错误:“:” token 之前的预期初始化程序
2 /错误:“返回”之前的预期主表达式
3 /错误:预期为';'在“返回”之前
4 /错误:“返回”之前的预期主表达式
5 /错误:“返回”之前应为“)”
为什么?
最佳答案
显然,您的编译器不支持range-based for-loops,至少不支持您使用的选项。
自GCC v4.6,Clang v3.0,MSVC v17.0,eccp v4.5,Intel C++ v13.0,IBM XLC++ v13.1.2,Sun / Oracle C++ 5.13,Cray v8.4, PGI 2015和HP aCC A.06.28。
检查您的编译器是最新的,并检查其有关如何激活C++ 11支持的手册。