[英]Using std::vector does not work
为什么以下代码无法编译,
#include <vector>
using std::vector;
vector<int> v; // Error: too few template arguments, expected 2
但是使用map
(和pair
, set
,...)而不是vector
使用相同的代码呢?
#include <map>
using std::map;
map<int, int> m; // OK
而且此代码也可以正常工作:
#include <vector>
using namespace std;
vector<int> v; // OK
我知道std::vector
构造函数有两个参数(类型和分配器),但是为什么vector
行为与其他容器有很大不同?
它尚未修复CLion错误: https ://youtrack.jetbrains.com/issue/CPP-5758#u=1454575544687。
作为一种解决方法,您可以尝试使用libstdc ++而不是libc ++,请参阅https://youtrack.jetbrains.com/issue/CPP-5758#comment=27-2389700 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.