
c++map 使用的是 堆 还是 栈
2个回答
展开全部
堆和栈都有用到
map对象本身是 如果是下面这种
std::map<int, int> xx ; //对象定义在上栈。
std::map<int, int>* pxx = new std::map<int, int>(); //创建在堆上。
map对象的数据,无论对象是在哪,数据都是在堆上。
map里面包含很多缓存指针,缓存的数据都是在堆上,这样才能保证可以传递,而不失效。
map对象本身是 如果是下面这种
std::map<int, int> xx ; //对象定义在上栈。
std::map<int, int>* pxx = new std::map<int, int>(); //创建在堆上。
map对象的数据,无论对象是在哪,数据都是在堆上。
map里面包含很多缓存指针,缓存的数据都是在堆上,这样才能保证可以传递,而不失效。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询