为什么我无法包含向量?

时间:2013-09-06 16:12:42

标签: c++ netbeans

非常基本的问题。我正在研究'加速C ++',但我无法继续。我当前练习的代码如下:

#include <iomanip>
#include <ios>
#include <iostream>
#include <vector>

using namespace std;

int main(int argc, char** argv) {
    int x;
    vector<double> quartiles;
    cin >> x;
    quartiles.push_back((double)x);
    return 0;
}

问题出现了......我不确定它是Netbeans(v7.3.1)还是编译器(Cygwin_4.x),不能识别矢量类。我在本章的例子中使用了这个类,但它在这个文件中没有识别它。

我所尝试的是保存和构建项目,以及删除文件并重新创建它以防万一我输入的内容,但无济于事。

任何帮助将不胜感激,谢谢你。

编辑:修复了在向量而不是四分位数上调用push_back()的错误。

Edit2:IDE(NetBeans)而不是编译器存在问题。

2 个答案:

答案 0 :(得分:8)

如果您正在谈论带有红色的带下划线的vector - 这也是我遇到的着名的NetBeans问题。一种解决方案是单击project context menu -> code assistance -> reparse project。代码本身(在您编辑之后)是一个有效的C ++代码,如果您尝试编译代码,编译器会将其视为绝对正确。

答案 1 :(得分:5)

您需要在push_back个实例上调用vector。所以

vector.push_back((double)x);

应该是

quartiles.push_back((double)x);