如何添加“或” #ifdef 中的条件

发布于 2024-09-04 23:06:59 字数 157 浏览 2 评论 0原文

如何在 #ifdef 中添加“或”条件?

我试过了:

#ifdef CONDITION1 || CONDITION2

#endif

这行不通。

How can I add a 'or' condition in #ifdef ?

I have tried:

#ifdef CONDITION1 || CONDITION2

#endif

This does not work.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

§普罗旺斯的薰衣草 2024-09-11 23:06:59
#if defined(CONDITION1) || defined(CONDITION2)

应该有效。 :)

#ifdef 的输入量要少一些,但不适用于更复杂的条件

#if defined(CONDITION1) || defined(CONDITION2)

should work. :)

#ifdef is a bit less typing, but doesn't work well with more complex conditions

如日中天 2024-09-11 23:06:59

可以使用这个 -

#if defined CONDITION1 || defined CONDITION2
//your code here
#endif

这也有同样的作用

#if defined(CONDITION1) || defined(CONDITION2)
//your code here
#endif

- 进一步-

  • AND:#if Defined CONDITION1 &&定义 CONDITION2
  • 异或:#if 定义 CONDITION1 ^ 定义 CONDITION2
  • AND NOT:#if 定义 CONDITION1 && !定义条件2

May use this-

#if defined CONDITION1 || defined CONDITION2
//your code here
#endif

This also does the same-

#if defined(CONDITION1) || defined(CONDITION2)
//your code here
#endif

Further-

  • AND: #if defined CONDITION1 && defined CONDITION2
  • XOR: #if defined CONDITION1 ^ defined CONDITION2
  • AND NOT: #if defined CONDITION1 && !defined CONDITION2
德意的啸 2024-09-11 23:06:59

检查一下:

    #if defined __WINDOWS__ && ( _MSC_VER >= 1700 )
        enum class FUTURES_DS_STAGE{
            ...
        };
    #else
        enum FUTURES_DS_STAGE{
        ...
        };
    #endif

Check this:

    #if defined __WINDOWS__ && ( _MSC_VER >= 1700 )
        enum class FUTURES_DS_STAGE{
            ...
        };
    #else
        enum FUTURES_DS_STAGE{
        ...
        };
    #endif
霊感 2024-09-11 23:06:59

我确实对维持严格的列限制有强迫症,并且不喜欢“\”
行继续,因为您不能在其后添加注释,所以这是我的方法。

//|¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯|//
#ifdef  CONDITION_01             //|       |//
#define             TEMP_MACRO   //|       |//
#endif                           //|       |//
#ifdef  CONDITION_02             //|       |//
#define             TEMP_MACRO   //|       |//
#endif                           //|       |//
#ifdef  CONDITION_03             //|       |//
#define             TEMP_MACRO   //|       |//
#endif                           //|       |//
#ifdef              TEMP_MACRO   //|       |//
//|-  --  --  --  --  --  --  --  --  --  -|//

printf("[IF_CONDITION:(1|2|3)]\n");

//|-  --  --  --  --  --  --  --  --  --  -|//
#endif                           //|       |//
#undef              TEMP_MACRO   //|       |//
//|________________________________________|//

I am really OCD about maintaining strict column limits, and not a fan of "\"
line continuation because you can't put a comment after it, so here is my method.

//|¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯|//
#ifdef  CONDITION_01             //|       |//
#define             TEMP_MACRO   //|       |//
#endif                           //|       |//
#ifdef  CONDITION_02             //|       |//
#define             TEMP_MACRO   //|       |//
#endif                           //|       |//
#ifdef  CONDITION_03             //|       |//
#define             TEMP_MACRO   //|       |//
#endif                           //|       |//
#ifdef              TEMP_MACRO   //|       |//
//|-  --  --  --  --  --  --  --  --  --  -|//

printf("[IF_CONDITION:(1|2|3)]\n");

//|-  --  --  --  --  --  --  --  --  --  -|//
#endif                           //|       |//
#undef              TEMP_MACRO   //|       |//
//|________________________________________|//
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文