代码之家  ›  专栏  ›  技术社区  ›  Emichael

包括常量而不导入头文件

  •  0
  • Emichael  · 技术社区  · 8 年前

    我不希望每次运行时都必须更改硬编码的维度,理想情况下,我会定义几个基本上只是:

    #ifndef dim_define_h 
    #define dim_define_h 
    
        const int dimension = [DIMENSION SPECIFIC TO THIS HEADER FILE];
    
    #endif
    

    然后在编译时,我可以使用该实例所需的任何头文件,如:

    g++ dimension_6.h code.cpp
    


    编辑:

    我的下一个尝试是仅获取主函数,将其与维度定义一起粘贴到另一个文件中,并复制该文件。然后编译如下所示:

    g++ dim_specific_main.cpp lots.cpp more.cpp helpers.cpp
    

    编辑2:我现在意识到我正试图在编译时需要知道的地方使用这个变量,我认为链接发生在编译后,所以我不相信这种特殊的方法是可能的。

    1 回复  |  直到 8 年前
        1
  •  6
  •   Richard Hodges    8 年前
    const int dimension = THE_DIMENSION;
    

    然后用编译

    g++ -DTHE_DIMENSION=6 code.cpp
    

    不需要标题。