Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/136.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在C++中添加一个整数和元组作为2D向量每行的列成员_C++_Vector_Integer_Tuples_2d - Fatal编程技术网

在C++中添加一个整数和元组作为2D向量每行的列成员

在C++中添加一个整数和元组作为2D向量每行的列成员,c++,vector,integer,tuples,2d,C++,Vector,Integer,Tuples,2d,我试图创建一个二维向量,如下所示: {{200, (44,66)}, {242, (13,44)}, {300, (23,71)}} 我试过这样的语法: std::vector<std::vector<int>> matrix(100, std::vector<int>(5)); typedef std::tuple<int, int>node_keys; matrix[0][0] = 200; matrix[0][1] = node_key

我试图创建一个二维向量,如下所示:

{{200, (44,66)},
 {242, (13,44)},
 {300, (23,71)}}
我试过这样的语法:

std::vector<std::vector<int>> matrix(100, std::vector<int>(5));
typedef std::tuple<int, int>node_keys;
matrix[0][0] = 200;
matrix[0][1] = node_keys(44,66);
这给了我以下错误:

Assigning to 'std::__1::__vector_base<int, std::__1::allocator<int> >::value_type' (aka 'int') from incompatible type 'node_keys' (aka 'tuple<int, int>')

现在我不知道该怎么办了。我试着到处找主意,但找不到。我相信这与试图在一个向量中分组两种不同数据类型之间的兼容性问题有关?!请告诉我。

如果每个元素都包含另外两个元素,您可以使用std::pair:


你想从200到44,66吗?我想得到的是一个nx2矩阵。我的第一列是所有整数,第二列是所有元组。第一列中的每个整数都有其对应的对应项,该对应项位于同一行的第二列中。
std::vector<std::pair<int, std::tuple<int, int>>> v = {
    { 200, {44,66} },
    { 242, {13,44} },
    { 300, {23,7} }
};