概述我知道C和C中的存储类(静态,外部,自动,寄存器,C也增加了可变性和一些特定于编译器的存储类),但我无法弄清楚存储
分配器是什么.我不认为它是指在STL上可实现的内存分配器,简单来说是什么? 它是operator new和operator delete背后的任何东西(不要与new运算符和delete运算符混淆). operator new从free store分配内存,operator delete 我知道C和C中的存储类(静态,外部,自动,寄存器,C也增加了可变性和一些特定于编译器的存储类),但我无法弄清楚存储分配器是什么.我不认为它是指在STL上可实现的内存分配器,简单来说是什么?解决方法 它是operator new和operator delete背后的任何东西(不要与new运算符和delete运算符混淆). operator new从free store分配内存,operator delete释放先前由operator new分配的内存,以便重用.当代码执行foo * ptr = new foo(new operator)时,编译器会生成调用operator new的代码以获取正确的存储字节数,然后调用foo的构造函数.当代码删除ptr(删除 *** 作符)时,编译器调用foo的析构函数,然后调用operator delete来释放内存.
请注意,这是C 03标准中使用该术语的方式.在C 11标准中,它也用于指代标准分配器.
总结
以上是内存溢出为你收集整理的c – 存储分配器 – 它是什么?全部内容,希望文章能够帮你解决c – 存储分配器 – 它是什么?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
评论列表(0条)