Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.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
是否建议指定例如vector<;t>;在我的公共界面中? 我是C++新手,在写一个类的时候,我发现我的一个方法是求向量向量。是应该这样做,还是应该重新考虑我的类的接口?(怎么做?_C++_Architecture - Fatal编程技术网

是否建议指定例如vector<;t>;在我的公共界面中? 我是C++新手,在写一个类的时候,我发现我的一个方法是求向量向量。是应该这样做,还是应该重新考虑我的类的接口?(怎么做?

是否建议指定例如vector<;t>;在我的公共界面中? 我是C++新手,在写一个类的时候,我发现我的一个方法是求向量向量。是应该这样做,还是应该重新考虑我的类的接口?(怎么做?,c++,architecture,C++,Architecture,向量向量不一定是坏事。如果需要多维数组之类的东西,那么就需要所需的东西。(只需确保通过[const]引用传递向量) 不过,您可能想更改问题的标题,因为标题上写着“vector”(粗体,因为它认为这是一个HTML标记),但您的问题询问的是一个向量向量。IMO,如果可能,最好将所有向量合并为一个向量。拥有vector的vector对我来说没有多大意义。我认为你使用什么容器没有问题。你可以这样做 void func(std::vector<std::vector<int> >

向量向量不一定是坏事。如果需要多维数组之类的东西,那么就需要所需的东西。(只需确保通过[const]引用传递向量)


不过,您可能想更改问题的标题,因为标题上写着“vector”(粗体,因为它认为这是一个HTML标记),但您的问题询问的是一个向量向量。

IMO,如果可能,最好将所有
向量
合并为一个
向量。拥有
vector
vector
对我来说没有多大意义。

我认为你使用什么容器没有问题。你可以这样做

void func(std::vector<std::vector<int> > const& int_matrix);

但是问题是,如果您的工作是以二进制文件而不是源代码的形式发布的,那么接口的用户应该拥有与您相同的STL实现,否则可能会发生奇怪的运行时错误。因此,在这种情况下,使用STL容器作为接口是不合适的。您必须自己定义一些结构作为参数类型。

围绕std::vector的简单包装类足以解决后一个问题吗?不幸的是,我不这么认为。
void func(std::vector<std::vector<int>> const& int_matrix);