我需要能够初始化在我创建它的同一行中的int的2D向量。
更具体地说,我必须创建一个 3x2 大小的2D矢量,并仅使用 1行代码将其所有值设置为0。
有没有办法可以在不使用for循环和几行代码的情况下完成?
答案 0 :(得分:1)
试试这个:
std::vector<std::vector<int>> twoDimVector(3, std::vector<int>(2, 0));
答案 1 :(得分:0)
如果您有小的2d向量(如您所建议的那样),则可以轻松实现(使用brace-init)quity。
TOL = 1e-2;
while (abs(newchisquare - chisquarevalue) <= 1 - TOL)
% your code
end
输出:
#include <vector>
#include <iostream>
int main(){
std::vector<std::vector<int>> vec{ { 0, 0 }, { 0, 0 }, { 0, 0 } };
std::cout << "vec size = " << vec.size() << "x" << vec[0].size() << std::endl;
return 0;
}