Visual Studio 2012 (и более ранние версии) предоставляют предопределенные #defines, чтобы исходный код можно было соответствующим образом изменить в #ifdef, см. http://msdn.microsoft.com/en-us/library/b0084kay.aspx
Я хотел бы #ifdef некоторый код C ++, если он компилируется (или нет) для среды выполнения Windows 8 (расширения компонентов для среды выполнения C ++ / CX), то есть с переключателем компилятора / ZW, см. http://msdn.microsoft.com/en-us/library/hh561383.aspx а также http://msdn.microsoft.com/en-us/library/xey702bw.aspx
Проверка на компиляцию C ++ или CLR обеспечивается __cplusplus и __cplusplus_cli (или __CLR_VER) соответственно, но, похоже, нет способа #ifdefing для компиляции среды выполнения C ++ / CX / Zw Windows !?
Кто-нибудь знает способ?
Спасибо
__cplusplus_winrt
макрос определяется, когда включена поддержка C ++ / CX (т.е. при компиляции с / ZW).
Других решений пока нет …