在函数外部声明一个结构
struct stru_a
{
char a1[10];
char a2[10];
};
然后动态创建
bbb = new stru_a();
创建一个函数:
void func(stru_a * in_stru)
{
delete in_stru;
in_stru = NULL
return;
}
但是在调用函数func(bbb)后发现bbb != NULL,这是为什么?
还有如何才能在函数(方法)内部删除对象?
struct stru_a
{
char a1[10];
char a2[10];
};
然后动态创建
bbb = new stru_a();
创建一个函数:
void func(stru_a * in_stru)
{
delete in_stru;
in_stru = NULL
return;
}
但是在调用函数func(bbb)后发现bbb != NULL,这是为什么?
还有如何才能在函数(方法)内部删除对象?
struct stru_a
{
char a1[10];
char a2[10];
};
然后动态创建
bbb = new stru_a();
创建一个函数:
void func(stru_a ** in_stru)
{
delete *in_stru;
*in_stru = NULL
return;
}
{
delete in_stru;
in_stru = NULL
return;
}
in_stru是个局部变量。
func(bbb)传给函数的是指针的值,bbb不会改变。正确写法如下:void func(stru_a ** in_stru)
{
delete *in_stru;
*in_stru = NULL
return;
}
调用: func(&bbb);