typdef struct _structname
{
int x;
string y;
} structure_name;
structure_name variable;
Run Code Online (Sandbox Code Playgroud)
现在我访问variable.x和y.使用它后,我如何解除分配或释放使用的内存variable?
实际上,当我在做变量时,内存被分配.y ="sample string".因此,=运算符分配导致问题的内存.我现在该如何解决?
只有在动态分配内存时才需要释放内存.
动态分配使用new或完成malloc,并且释放分别使用delete或free完成.
如果您的程序不使用new或malloc在任何地方使用,那么您不需要使用delete或malloc任何一个.注意会有许多许多delete,因为有new.而同样是真正的malloc和free也.
也就是说,在一个程序中:
new语句等于多少执行的 delete 语句!malloc语句等于多少执行的 free 语句!如果执行的 数量较少delete或者free,那么您的程序是泄漏内存.如果有较少的数量执行 new或malloc那么你的程序很可能会崩溃!