如果在C++或C++/CLI下以编程方式查找

Ayb*_*ybe 15 compilation c++-cli

我希望我的C++/CLI标头即使在另一个平台下也能编译.当然我不期望编译它们但只是忽略它们.

这是否合适?(_MSC_VER)

#ifdef _MSC_VER

    using namespace System;

        namespace ENMFP {

            public ref struct Data {
            };
        }

#endif
Run Code Online (Sandbox Code Playgroud)

谢谢 !

Fré*_*idi 17

您可以使用此处__cplusplus_cli记录的预定义宏:

#ifdef __cplusplus_cli

using namespace System;

namespace ENMFP
{
    public ref struct Data
    {
        // ...
    };
}

#endif  // __cplusplus_cli
Run Code Online (Sandbox Code Playgroud)

  • 好吧,我现在明白了,它没有显示在Intellisense中,也没有导航到它但它存在,我查了#ifdef __cplusplus_cli #pragma message("cli") (3认同)