2D向量的C++语法

rah*_*dam -1 c++ stl

有人可以通过示例解释下面的c ++语法吗?

vector <vector <int> > s(n,vector <int> ());
Run Code Online (Sandbox Code Playgroud)

特别是构造函数中的这部分:

vector <int> ()
Run Code Online (Sandbox Code Playgroud)

Fra*_*ank 5

这个vector的特定构造函数有两个参数:

  1. 元素的数量.
  2. 要分配给每个元素的值.

例如,这会创建一个包含值5的3倍的向量.

std::vector<int> vec(3, 5);
Run Code Online (Sandbox Code Playgroud)

vector<int>()是一个默认构造的实例vector<int>.所以你要创建一个包含n个向量的向量,每个向量都是空的