我可以使用块来管理C中的内存消耗吗?
作者:互联网
我试图在C程序中节省一些内存,我想知道我是否可以使用块作为变量的范围(如在Perl中).假设我有一个巨大的对象执行一些计算并给出结果,这样做是否有意义:
InputType input;
ResultType result;
{
// Block of code
MyHugeObject mho;
result = mho.superHeavyProcessing();
}
/*
My other code ...
*/
退出块时,我可以期望对象被销毁吗?
解决方法:
是的你可以.
一旦变量超出范围,就会调用析构函数,它应该释放堆分配的内存.
标签:scoping,c,object 来源: https://codeday.me/bug/20190929/1831493.html