这可以用于创建特定大小的2d向量的实例:
#define rows 5
#define columns 7
std::vector<std::vector<int>> v2d(rows, std::vector<int>(columns));
创建包含size_t和要使用初始大小创建的向量的对的实例的等价物是什么?
std::pair<size_t, std::vector<int>> psv(...(columns)...);
感谢您的帮助,对于这些语言的矢量,这种语法似乎有效。
std::vector<std::pair<size_t, std::vector<int>>>vpiv(rows,
std::pair<size_t, std::vector<int>>(0, std::vector<int>(columns)));
答案 0 :(得分:1)
std::pair<size_t, std::vector<int>> psv(my_size_t, std::vector<int>(my_vec_size));
或者(在C ++ 11之前std::make_pair
可以制作一些额外的副本)。
auto psv = std::make_pair(static_cast<size_t>(my_size_t), std::vector<int>(my_vec_size));
演员表是为了确保第一种类型绝对是size_t
。如果my_size_t
已经是size_t
类型,则可以省略它。
答案 1 :(得分:0)
std::make_pair(some_size, some_vector)