zoukankan      html  css  js  c++  java
  • #ifdef...#endif作用

    #ifdef语句1
      //程序2
    #endif

    可翻译为:如果宏定义了语句1则程序2。
    作用:我们可以用它区隔一些与特定头文件、程序库和其他文件版本有关的代码。

    解释如下:
    代码举例:新建define.cpp文件

    #include<iostream>
    usingnamespacestd;
    intmain(intargc,char*argv[])
    {
        #ifdefDEBUG
      cout<<"Beginningexecutionofmain()"<<endl;
      #endif
      return0;
    }

    运行结果为:

    Pressanykeytocontinue
      
    改写代码如下:

    #include<iostream>
    usingnamespacestd;
    #defineDEBUG
    intmain(intargc,char*argv[])
    {
      #ifdefDEBUG
      cout<<"Beginningexecutionofmain()"<<endl;
      #endif
      return0;
    }

    运行结果为:

    Beginningexecutionofmain()
    Pressanykeytocontinue
      

    更一般的情况是,#define语句是包含在一个特定的头文件中。
    又比如,新建头文件head.h,在文件中加入代码:

    #defineDEBUG
    #ifdefDEBUG
    #endif
    
    而在define.cpp源文件中,代码修改如下:
    #include<iostream>
    #include"head.h"
    intmain(intargc,char*argv[])
    {
      #ifdefDEBUG
      cout<<"Beginningexecutionofmain()"<<endl;
      #endif
      return0;
    }

    运行结果如下:

    Beginningexecutionofmain()
    Pressanykeytocontinue
      
    结论:
    通过使用#ifdef指示符,我们可以区隔一些与特定头文件、程序库和其他文件版本有关的代码。

    Smartkeke
  • 相关阅读:
    MT【90】图论基础知识及相关例题
    MT【89】三棱锥的体积公式
    Qt之界面实现技巧
    QCompleter自动补全
    Qt之开机自启动
    Qt之日志输出文件
    相遇Qt5
    QT中的pro文件的编写
    qt下的跨目录多工程编译
    用QT打开网页
  • 原文地址:https://www.cnblogs.com/smartkeke/p/6978346.html
Copyright © 2011-2022 走看看