#define private public 求高手解析
为了做白盒测试,我在测试工程中的头文件中加了#define private public ,方便访问源文件的私有成员与函数,源文件都包含到测试工程中。编译的时候出了很多问题。都是STL中,gtest中的引用错误,求高手从技术层面上讲解一下,这种方法是否可行 help help
[解决办法]
擦,我用codeblock测试了一下,居然通过了- -
#define private public#include <iostream>using namespace std;class H {private: void hello() { cout << "dfafd" << endl; }};int main() { H h; h.hello(); getchar(); return 0;}
[解决办法]
这样会导致“整个世界都被重新编译了..”这样的事情最好还是别做。痛苦...
[解决办法]
不合规范,肯定麻烦。
[解决办法]
靠,这样的招都想出来了,你真狠!