Visual C++ 2005 でのプリプロセッサの機能
更新 : 2007 年 11 月
このトピックでは、Visual C++ 2005 プリプロセッサの新機能の一覧を示します。
詳細については、「Visual C++ 2005 コンパイラの互換性に影響する変更点」を参照してください。
解説
Visual C++ 2005 プリプロセッサには、次の新機能があります。
__CLR_VER 定義済みマクロが追加されました。詳細については、「Predefined Macros」を参照してください。
comment (C/C++) プラグマが、リンカ コメントとして /MANIFESTDEPENDENCY を受け付けるようになりました。comment の exestr オプションは使用されなくなりました。
embedded_idl 属性 (The #import Directive) で省略可能なパラメータを使用できるようになりました。
fenv_access プラグマ
float_control プラグマ
fp_contract プラグマ
managed, unmanaged プラグマおよび unmanaged プラグマのセクションにグローバル変数がある場合、グローバル変数は宣言された順には初期化されません。この変更は、たとえばアンマネージ グローバル変数がマネージ グローバル変数で初期化される場合や完全に構築されたマネージ オブジェクトが要求される場合に、互換性に影響する可能性があります。
init_seg で指定されたセクションは読み取り専用になりました。以前のバージョンのように読み書き可能ではありません。
inline_depth の既定が 16 になりました。既定値の 16 は、Visual C++ .NET 2003 でも有効でした。
_INTEGRAL_MAX_BITS 定義済みマクロが追加されました。「Predefined Macros」を参照してください。
_M_CEE、_M_CEE_PURE、および _M_CEE_SAFE の各定義済みマクロが追加されました。「Predefined Macros」を参照してください。
_M_IX86_FP 定義済みマクロが追加されました。詳細については、「Predefined Macros」を参照してください。
_M_X64 定義済みマクロが追加されました。詳細については、「Predefined Macros」を参照してください。
make_public プラグマ
managed, unmanaged プラグマ構文が更新されました (push および pop が追加されました)。
すべての /clr コンパイルで、The #using Directive によって、mscorlib.dll が暗黙的に参照されるようになりました。
_OPENMP 定義済みマクロが追加されました。詳細については、「Predefined Macros」を参照してください。
optimize プラグマが更新され、a パラメータおよび w パラメータが無効になりました。
no_registry#import 属性が追加されました。
region, endregion プラグマが追加されました。
_VC_NODEFAULTLIB 定義済みマクロが追加されました。詳細については、「Predefined Macros」を参照してください。
Variadic Macros が実装されました。
vtordisp が使用されなくなりました。Visual C++ の将来のリリースでは削除されます。
warning プラグマが suppress 指定子を持つようになりました。