之前看代码,一直对pIml这个用法一知半解,参考这里 的一篇文章后有所收获. 总结一下,pIml的好处如下: 第一,引入更多的头文件降低编译速度.而且这个声明当然写在一个头文件里,而头文件,是不能预编译或增量编译的, 如果你因此而引入一个诸如<windows.h>之类的头文件,产生的代价可能是一杯咖啡的编译时间--而且每次编译都这样: 第 二,大大提高的模块的耦合度.在这里,CFooInternalData从此与 CFoo紧紧绑定.在一个库里的模块互相耦合当然可以忍受, 不过你要记得,这里有两…