我制作了一个 C++ 类,并将其放入它自己的静态库中。
我还决定创建一个最小的头文件,让其他人可以看到public:
课程的一部分。所以我基本上取了原始的头文件(它相当长,包含类的private:
和public:
部分等),并剥离了除public:
部分之外的所有内容(很短,只有构造函数/析构函数和一个公共函数)。
为了进行测试,我创建了一个使用该库的虚拟项目。问题是,每当我在该项目中使用最小的头文件时,它都会崩溃并显示如下消息:
test(44349) malloc: *** error for object 0x7fdab2c242e8: incorrect checksum for freed object - object was probably modified after being freed.
*** set a breakpoint in malloc_error_break to debug
但是每当我包含原始头文件时,它都可以正常工作。
可能是什么问题呢?-Wall
它使用最小和原始头文件都可以很好地编译(即使使用 也没有警告)。