【发布时间】:2020-10-21 06:09:27
【问题描述】:
我想使用指针传递打印多维向量a 的值。谁能告诉我我的程序有什么问题?我遇到了很多错误。
#include <iostream>
#include <vector>
using namespace std;
class foo{
private:
vector <int> v;
public:
foo(vector<vector <int> >**);
};
foo :: foo(vector<vector<int> >** a)
{
cout << a[0][0] <<endl;
//cout<<a->size()<<endl;
}
int main()
{
vector<vector<int>> a{{1,2,3,4},{5,6,7,8}};
foo f(&a);
}
谢谢!
【问题讨论】:
-
请显示您遇到的错误。您没有通过引用传递您正在使用指针,因此您需要使用
(*a)[0][0] -
@AlanBirtles 这是一个愚蠢的错误,抱歉。
-
您似乎一直在阅读有关数组的内容,并试图将您阅读的内容应用于向量。获取good book。 (而且绝对没有理由在这里使用类。)
-
@molbdnilo 实际上,这个类结构用于我正在编写的另一个程序中。是的,这里不需要这个类,但我需要在不同的程序中使用这个概念。是的,我正在尝试在向量中复制多维数组。