从 2D 混合数组和向量中释放内存
Deallocate memory from 2D mixed array and vector
在整个模拟过程中定义并使用了 2D 和 3D 数组向量,它们的大小非常大,因此需要重新分配。
array<vector<double>, n> A;
array<vector<vector<double>, n>, m> B;
正确的方法是什么?
让它们超出范围:
{
array<vector<double>, n> A;
array<vector<vector<double>, n>, m> B;
// use arrays ...
} // leave scope, arrays will be deallocated
在整个模拟过程中定义并使用了 2D 和 3D 数组向量,它们的大小非常大,因此需要重新分配。
array<vector<double>, n> A;
array<vector<vector<double>, n>, m> B;
正确的方法是什么?
让它们超出范围:
{
array<vector<double>, n> A;
array<vector<vector<double>, n>, m> B;
// use arrays ...
} // leave scope, arrays will be deallocated