deprecated (C/C++)

 

公開日: 2016年7月

Visual Studio 2017 RC の最新のドキュメントの詳細については、Visual Studio 2017 RC ドキュメントをご参照ください。

deprecated プラグマを使用して、今後のリリースでサポートされない、または使用が推奨されない関数、型、その他の識別子を示すことができます。

  
#pragma deprecated( identifier1 [,identifier2, ...] )  

コンパイラは、使用されていないシンボルを検出すると、C4995 を発行します。

マクロ名の使用を避けることができます。 マクロ名を引用符で囲んで配置します。そうしないと、マクロ展開が発生します。

deprecated __declspec 修飾子を使用して、オーバーロードされた関数の特定形式に対し、deprecated ステータスを指定できます。

// pragma_directive_deprecated.cpp  
// compile with: /W3  
#include <stdio.h>  
void func1(void) {  
}  
  
void func2(void) {  
}  
  
int main() {  
   func1();  
   func2();  
   #pragma deprecated(func1, func2)  
   func1();   // C4995  
   func2();   // C4995  
}  

次のサンプルでは、クラスの使用を避ける方法を示します。

// pragma_directive_deprecated2.cpp  
// compile with: /W3  
#pragma deprecated(X)  
class X {  // C4995  
public:  
   void f(){}  
};  
  
int main() {  
   X x;   // C4995  
}  

プラグマ ディレクティブと __Pragma キーワード

表示: