在不改变被测对象的前提下,想要调用类的私有数据区,可以在编译测试文件时使用-Dprivate=public或者在测试文件里加#include private public
这里的被测对象可以是.cpp,也可以是已经经过编译的.o, .so文件,在编译这些文件的时候不使用-Dprivate=public,于是产生了一个疑问,public、private这些是不是只在编译阶段做检查,上网搜了下,搜到一句话:
The compiler have all information about all the code in a translation unit