尝试使用向量构建矩阵时出错 我试图了解C++标准库,并从向量开始。我试图用向量实现一个矩阵。下面是我的代码 #include <iostream> #include <vector> using namespace std; int main() { vector< vector<double> > matrix; double array1[5]={1,2,3,4,5}; vector<double> vec1(array1 , array1+5) ; double array2[5]={11,32,23,24,25}; vector<double> vec2(array2 , array1+5) ; matrix.push_back(vec1); matrix.push_back(vec2); for(int i=0;i<matrix.size();i++) { for(int j=0;j<matrix[i].size();j++) { cout<<i<<j<<matrix[i][j]<<endl; //cout<<matrix[i][j]<<endl; } } return 0; }
谁能解释一下我哪里出错了。行尝试使用向量构建矩阵时出错 我试图了解C++标准库,并从向量开始。我试图用向量实现一个矩阵。下面是我的代码 #include <iostream> #include <vector> using namespace std; int main() { vector< vector<double> > matrix; double array1[5]={1,2,3,4,5}; vector<double> vec1(array1 , array1+5) ; double array2[5]={11,32,23,24,25}; vector<double> vec2(array2 , array1+5) ; matrix.push_back(vec1); matrix.push_back(vec2); for(int i=0;i<matrix.size();i++) { for(int j=0;j<matrix[i].size();j++) { cout<<i<<j<<matrix[i][j]<<endl; //cout<<matrix[i][j]<<endl; } } return 0; },c++,C++,谁能解释一下我哪里出错了。行向量向量2(array2,array1+5)是错误的。它应该是向量vec2(array2,array2+5)。原来是采取2个任意地址,并试图使一个向量。由于地址范围[array2,array1+5)无效,因此会出现未定义的行为。行向量vec2(array2,array1+5);错误。它应该是向量vec2(array2,array2+5);。原始行获取2个任意地址并尝试生成向量。由于地址范围[array2,array1+5)无效,出现未定义的行为 terminate c
向量向量2(array2,array1+5)代码>是错误的。它应该是向量vec2(array2,array2+5)代码>。原来是采取2个任意地址,并试图使一个向量。由于地址范围[array2,array1+5)
无效,因此会出现未定义的行为。行向量vec2(array2,array1+5);
错误。它应该是向量vec2(array2,array2+5);
。原始行获取2个任意地址并尝试生成向量。由于地址范围[array2,array1+5)
无效,出现未定义的行为
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
Aborted (core dumped)