zoukankan      html  css  js  c++  java
  • C语言宏定义技巧——多次包括头文件内容不同

    1、  头文件定义例如以下:

    /* declears in “funcs.h” */

    FUNC_1(ID_FUN1_001)

    FUNC_1(ID_FUN1_002)

    FUNC_2(ID_FUN2_001)

    FUNC_2(ID_FUN2_002)

    2、  多次包括头文件

    #define FUNC_1(opt) opt,

    #define FUNC_2(opt)

    enum aaa {

        #include “funcs.h”

        ID_FUN1_END

    };

    #undef FUNC_1

    #undef FUNC_2

    #define FUNC_1(opt)

    #define FUNC_2(opt) opt,

    enum bbb {

        #include “funcs.h”

        ID_FUN2_END

    };

    #undef FUNC_1

    #undef FUNC_2

    这样。把宏翻译之后。我们定义的两个enum分别例如以下

    enum aaa {

        ID_FUN1_001,

        ID_FUN1_002,

        ID_FUN1_END

    };

    enum bbb {

        ID_FUN2_001,

        ID_FUN2_002,

        ID_FUN2_END

    };

  • 相关阅读:
    PG
    unzip
    yum
    PG
    SQL
    Grails
    Grails
    Grails
    Chrome
    HTML
  • 原文地址:https://www.cnblogs.com/brucemengbm/p/6817898.html
Copyright © 2011-2022 走看看