在文件的顶部,我有:
#include "vector.h"
然后我做了一个:
vector<vtarg> targVector;
并收到以下错误
Cannot open include file: 'vector.h': No such file or directory
我错过了什么吗?我尝试了#include“vector”更多的错误。
#include "afxwin.h"
#include "vector.h"
// CTargDlg dialog
class CTargDlg : public CDialog {
// Construction
public:
CTargDlg(CWnd* pParent = NULL);
// standard constructor
vector<vtarg> targVector;
答案 0 :(得分:10)
您需要使用
#include <vector>
而不是.h
文件扩展名。此外,vector
模板位于std
命名空间中,因此您应该定义您的矢量
std::vector<vtarg> targVector;
还要确保包含vtarg
所需的任何标头。
答案 1 :(得分:5)
你犯了3个错误。
首先,include文件名为vector,而不是vector.h。
其次,此向量是包含标准C ++运行时库的一部分,您需要使用&lt;&gt;包括建筑,像这样:
#include <vector>
第三,vector类(实际模板类)属于std名称空间。所以你应该写:
std::vector<vtarg> targVector;
答案 2 :(得分:4)
标头文件名为vector
,而不是vector.h
。
通常,标准C ++标头没有.h
后缀。
如果你#include <vector>
得到“更多错误”,那么你需要解决这些错误。但既然你还没有说出那些 的错误,那就很难帮助你。
答案 3 :(得分:1)
没有"vector.h"
。 std :: vector的头文件是<vector>
。实际上,所有C ++标准库头文件(除了C兼容版本)都没有“.h”。
答案 4 :(得分:1)
尝试这种替代方案
include "vector"
某些编译器,如visual c ++ 2010,支持这种类型的符号 此外,如果它是.c文件,例如xy.c,请使用include&#34; xy&#34;。
答案 5 :(得分:0)
#include "vector.h"
实际上是使用它的正确方法。
https://www.stanford.edu/class/cs106b/cppdoc/Vector-class.html
问题是我不认为大多数编译器都设置为包含stanford库,因此我认为文件是你自己要包含的内容。