1.容易导致程序在运行的时候崩溃的细节:
(1)槽函数跨线程的时候不能传递“变量类型 &变量”的值;
(2)在头文件新建的指针类型,后面在.cpp文件里面没有new给它初始化,需要在头文件里面删除掉,如果没有删除程序会崩溃;
2.全局指针传值:
❌ 错误用法示例 1:指针值被传递给局部变量(拷贝)
void open_file(FILE* f) { // f 是副本,不会修改主调函数的变量
f = fopen("data.txt", "r");
}
在 main() 中:
FILE* fp = NULL;
open_file(fp); // 实际上 fp 没被改
❌ 以为改了 fp,但实际上改的是 f 的拷贝,fp 还是 NULL。
✅ 正确方式:用 FILE**(指向指针的指针)
void open_file(FILE** fptr) {
*fptr = fopen("data.txt", "r");
}
调用时:
FILE* fp = NULL;
open_file(&fp); // 修改了真正的 fp 值
1880

被折叠的 条评论
为什么被折叠?



