我是初学者,不知道下面#ifndef在代码中是什么意思。
#ifndef SAFE_RELEASE
#define SAFE_RELEASE(x) \
   if(x != NULL)        \
   {                    \
      x->Release();     \
      x = NULL;         \
   }
#endif

解决方案 »

  1.   

    是预编译指令,表示如果没有定义SAFE_RELEASE,就定义SAFE_RELEASE,他和#endif配对使用,
      

  2.   

    #ifndef
    就是说if not defined(如果没有定义)#ifndef SAFE_RELEASE\\如果没有定义这个东东
    #define SAFE_RELEASE(x) \那么就定义这个东东
       if(x != NULL)        \
       {                    \
          x->Release();     \
          x = NULL;         \
       }
    #endif\\然后结束预定义
      

  3.   

    #ifndef
    就是说if not defined(如果没有定义)#ifndef SAFE_RELEASE\\如果没有定义这个东东
    #define SAFE_RELEASE(x) \那么就定义这个东东
       if(x != NULL)        \
       {                    \
          x->Release();     \
          x = NULL;         \
       }
    #endif\\然后结束预定义
      

  4.   

    预定义的,#ifndef
                #define
                  . . .
              #endif
      

  5.   

    或者用
    预定义的,#ifdef<标识符>
                <程序段落1>              
              #else
                <程序段落1>
               #endif
      

  6.   

    #ifndef <=> #if !defined(...)
      

  7.   

    为了防止头文件被重复引用,应当用ifndef/define/endif结构产生预处理块。
      

  8.   

    就是说if not defined(如果没有定义)然后.....