__FILE__; //定义THIS_FILE,把当前的文件名存入THIS_FILE中
#define new DEBUG_NEW //定义DEBUG_NEW
#endif
#define new DEBUG_NEW //定义DEBUG_NEW
#endif
THIS_FILE是用在DEBUG_NEW里
为什么不直接用new(__FILE__, __LINE__),因为较旧的编译器(如VC6.0)没有字符串池优化,可能会造成编译文件较大,所以用static char THIS_FILE[]声明唯一的副本
新版的(VS2005、2008、2010、2012)已经声明#define THIS_FILE __FILE__
为什么不直接用new(__FILE__, __LINE__),因为较旧的编译器(如VC6.0)没有字符串池优化,可能会造成编译文件较大,所以用static char THIS_FILE[]声明唯一的副本
新版的(VS2005、2008、2010、2012)已经声明#define THIS_FILE __FILE__