我想检查数组中的size()数字或数字.rowsstd::vector()
我有矢量
std::vector<int> vec[3];
Run Code Online (Sandbox Code Playgroud)
vec.size() 不适用于上面的矢量声明.
至于为什么vec.size()不起作用,因为vec它不是一个向量,它是一个数组(向量),而C++中的数组不是对象(在OOP意义上它们不是类的实例),因此没有成员函数.
如果你想3在做的时候得到结果vec.size()你要么必须使用例如std::array:
std::array<std::vector<int>, 3> vec;
std::cout << "vec.size() = " << vec.size() << '\n'; // Will output 3
Run Code Online (Sandbox Code Playgroud)
或者如果你没有,std::array那么使用向量向量并通过调用正确的构造函数来设置大小:
std::vector<std::vector<int>> vec(3);
std::cout << "vec.size() = " << vec.size() << '\n'; // Will output 3
Run Code Online (Sandbox Code Playgroud)