所以我尝试做类似std::vector<int> WidthNumbers = 320, 640, 1280;的事情,但是编译器给了我C2440: 'int' to 'std::vector<_Ty>'错误

最佳答案

您不能使用该语法初始化vector。 C++ 0x允许使用初始化程序列表,使您可以使用以下列表:

std::vector<int> WidthNumbers = {320, 640, 1280};

但这在VS2010中尚未实现。替代方法是:
int myArr[] = {320, 640, 1280};
std::vector<int> WidthNumbers( myArr, myArr + sizeof(myArr) / sizeof(myArr[0]) );


std::vector<int> WidthNumbers;

WidthNumbers.push_back(320);
WidthNumbers.push_back(640);
WidthNumbers.push_back(1280);

07-24 14:31