gpt4 book ai didi

c++ - 释放分配给二维 vector 的内存

转载 作者:太空宇宙 更新时间:2023-11-04 14:05:27 26 4
gpt4 key购买 nike

我有以下二维 vector :

std::vector<std::vector<int>> m_scoreVector; 

我尝试使用以下代码来释放分配的内存。但是,它不起作用。只有一小部分内存会被释放:

for (int k = 0; k < m_scoreVector.size(); ++k){     
std::vector<int>().swap(m_scoreVector[k]);
m_scoreVector[k].shrink_to_fit();
m_scoreVector[k].clear();
}

std::vector<std::vector<int>>().swap(m_scoreVector);
m_scoreVector.shrink_to_fit();
m_scoreVector.clear();

我是内存管理新手。请让我知道我应该如何释放为此 vector 分配的内存。谢谢。

最佳答案

vector 为您管理内存。当它们超出范围时,它们将释放内存。一般来说,如果您不使用 new 或 malloc 分配内存,您也不必担心释放它。

关于c++ - 释放分配给二维 vector 的内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17182815/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com