有代码。
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif1)#define new DEBUG_NEW
这里new是什么意思?为什么要这样定义?
2)static char THIS_FILE[]=__FILE__;
这里__FILE__是什么意思?

解决方案 »

  1.   

    定义 new 为 DEBUG_NEW, 这样 new 的操作将被跟踪
    __FILE__ 指这个文件的文件名
      

  2.   

    在这里把new定义为DEBUG,在后面的操作中new才可以被跟踪,
    那么static char THIS_FILE[]=_FILE_中的file是指这个文件的文件名呀?
    当你学vc的时间稍长一些后,你在回过头来想想这个问题,是不是该定义呢?
    你只要在vc中写程序,可以说没有不定义的.
      

  3.   

    定义C++中的 new操作 为 DEBUG_NEW,这样就可以加调试信息了。THIS_FILE是编译器需要的。__FILE__是指当前文件的文件名。这些都是为了调试程序需要的。你的程序出了问题
    时,你不是老是看到谈出一个对话框说在哪个文件哪一个出错的呀,就是靠这些东西来做的呀。