1.如果需要将一个字符串传出来,但是不知道其大小,可以先malloc(1)然后,relloc,再进行free
eg:
LONG string_1(void)
{
CHAR* str = malloc(1);
string_2(&str);
...
if(null != str)
{
free(str);
str = null;
}
}
LONG string_2(char** str)
{
*str = relloc(*str, sizeof() );
...
}
2.内存的理解(Qt信号机制)
信号的参数,尽量不使用局部变量的引用做形参,信号发出去,函数参数释放空间,那么参数不可用甚至会导致程序挂死。
信号携带的参数,尽量使用全局变量的引用和指针,或者局部变量的实体。