我在 Ubuntu 上使用 C++ 工作。我想知道如何创建具有动态长度的矩阵?
我这样做了:int matrix[12][]
但它不起作用。列的维度将在我的代码中逐步增加。有人可以在示例中向我展示正确的代码吗?
最佳答案
int ** matrix;
matrix = new int* [rowcount];
for (int i = 0; i<rowcount; ++i)
{
matrix[i] = new int[colcount]
}
要清理它:
for(int i = 0; i < rowcount; ++i)
delete [] matrix[i];
delete [] matrix;
当然,当你使用 vector 时,内存管理是自动完成的;
vector<vector<int> > matrix(rowcount, vector<int>(colcount));
关于c++ - 多维动态矩阵如何创建一个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6436729/