问:
使用了STL函数 但是提示很多错误
错误如下
g++ new.cpp -I/usr/include -lz -lm
new.cpp:29:2: 警告:文件未以空白行结束
new.cpp:7: 错误:expected constructor, destructor, or type conversion before ‘ <’ token
new.cpp: In function ‘int main()’:
new.cpp:14: 错误:‘v’ 在此作用域中尚未声明
new.cpp:19: 错误:‘v’ 在此作用域中尚未声明
new.cpp:19: 错误:‘accumulate’ 在此作用域中尚未声明
new.cpp:20: 错误:‘cout’ 在此作用域中尚未声明
new.cpp:20: 错误:‘endl’ 在此作用域中尚未声明
new.cpp:25: 错误:‘multiplies’ 在此作用域中尚未声明
new.cpp:25: 错误:expected primary-expression before ‘long’
代码如下
#include
#include // Need accumulate()
#include // Need vector
#include // Need multiplies() (or times())
#define MAX 10
vector v(MAX); // Vector object
int main()
{
// Fill vector using conventional loop
//
for (int i = 0; i < MAX; i++)
v[i] = i + 1;
// Accumulate the sum of contained values
//
long sum =
accumulate(v.begin(), v.end(), 0);
cout < < "Sum of values == " < < sum < < endl;
// Accumulate the product of contained values
//
long product =
accumulate(v.begin(), v.end(), 1, multiplies ());//注意这行
cout < < "Product of values == " < < product < < endl;
return 0;
}
答:
加上 using namespace std;
或者用 std::vector
阅读(1812) | 评论(0) | 转发(0) |