C++ Primer中的vector问题
C++ primer中用到的vector, list,map 等等C++标准类,我用Visual Studio 控制台程序编译它,怎么不过呢?
具体如下:
1.我的程序:
//vector.cpp
#include <vector>
#include <iostream>
int main()
{
vector<int>ivec;
cout<<"ivec:size; "<<ivec.size()
<<" capacity: "<<ivec.capacity()<<endl;
return 0;
}
2.用console建立工程过程:
1)new
2)project-->Win32 Console Application
3)An empty project //??是否此步骤不妥?
加入我的vector.cpp到project中。
3.我的VisualStudio配置信息:
tools/options/Directories/include -->也已经包含了vc的inlcude路径了
4.显示错误信息:
G:\PRACTISE\vector\vector.cpp(7) : error C2065: 'vector' : undeclared identifier
G:\PRACTISE\vector\vector.cpp(7) : error C2062: type 'int' unexpected
G:\PRACTISE\vector\vector.cpp(8) : error C2065: 'cout' : undeclared identifier
G:\PRACTISE\vector\vector.cpp(8) : error C2297: '<<' : illegal, right operand has type 'char [12]'
G:\PRACTISE\vector\vector.cpp(8) : error C2065: 'ivec' : undeclared identifier
G:\PRACTISE\vector\vector.cpp(8) : error C2228: left of '.size' must have class/struct/union type
G:\PRACTISE\vector\vector.cpp(9) : error C2228: left of '.capacity' must have class/struct/union type
G:\PRACTISE\vector\vector.cpp(9) : error C2065: 'endl' : undeclared identifier
我的问题:
1.如何编译过?(改那些设置,Studio不会不支持这些东西吧?)
2.头文件<iostream.h>与<iostream>类型的有什么区别?(文件名相同,但是一个有.h,一个没有。vc/include目录下有好几个这样的文件)(好像iostream.h类型的是微软的,它的开头写着版权归于微软,iostream写着版权归于P.J. Plauger,不知道是什么牛人--好像是写C++STL的那个哥们)
谢谢