使用嵌套向量动态分配方阵
Square matrix allocation using nested vectors dynamically
int n=0,b;
cin>>n;
vector <vector<int>> a;
for (int i=0;i<n;i++)
for(int j=0;j<n;j++){
cin>>b;
a[i][j].push_back(b);
}
帮助我在向量的帮助下初始化 2D 数组
如果你
有一个vector<vector<int>>
,这不是一个二维数组,而是一个向量的向量。
然后将行向量推送到外部向量中:
vector<vector<int> > a;
int b;
for (unsigned int row = 0; row < n; ++row)
{
vector<int> new_row;
for (unsigned int colunm = 0; column < n; ++column)
{
cin >> b;
new_row.push_back(b);
}
a.push_back(new_row);
}
如果在创建矢量时预留空间,则可以使用[][]
。
看起来你实际上想要这样的东西:
vector <vector<int>> a;
for (int i=0;i<n;i++) {
a.push_back(vector<int>());
for(int j=0;j<n;j++){
cin>>b;
a.at(i).push_back(b);
}
}
请注意,对于每一行(外循环),我们首先推送该行的空向量,然后推送回该新向量。
相关文章:
- 如果C++类在类方法中具有动态分配,但没有构造函数/析构函数或任何非静态成员,那么它仍然是POD类型吗
- 使用动态分配的数组会导致代码分析发出虚假的C6386缓冲区溢出警告
- 在c++中使用动态分配的问题
- 使用递归模板动态分配的多维数组
- 对具有动态分配的内存和析构函数的类对象的引用
- 我有一个对象,它将在整个程序的持续时间内实例化,但一个类成员不会,我应该动态分配它吗?
- 访问动态分配列表中的元素
- 为什么 std::equal_to会导致动态分配?
- 调用析构函数以释放动态分配的内存
- 动态分配Q_Property变量
- 在 C++ 中搜索动态分配的数组中的出现次数
- 动态分配的聊天数组打印缺失的数据和空
- 在对象指针上调用 Delete 是否会递归删除其动态分配的成员
- 使用动态分配将 char* 复制到另一个字符**
- 使用指针在存在特征库的情况下动态分配 c++ 中的矩阵
- 二维阵列的动态分配
- 0xC0000005:访问冲突写入位置0xCDCDCDCD动态分配错误
- 在运行时为动态分配的内存输入值
- 释放动态分配的内存时是否需要执行此额外步骤
- 使用嵌套向量动态分配方阵