移植性を備えた C クラス メソッドの廃止
C プログラマは、インターフェイス内で廃止されたメソッドをマークする必要に遭遇することがよくあります。プラットフォーム固有のソリューションは存在しますが、この記事では完全に移植可能な非推奨の方法について説明します。
C 14: 推奨されるソリューション
C 14 では、[[非推奨]]属性は、関数を非推奨にするための簡単で移植可能な方法を提供します。この属性は、関数を非推奨だが許容されるものとしてマークします。
たとえば、関数 foo を非推奨にするには:
[[deprecated]] void foo(int);
説明的なメッセージを提供することもできます:
[[deprecated("Replaced by bar, which has an improved interface")]] void foo(int);
マルチコンパイラ互換性
C 14 の [[非推奨]] 属性は理想的なソリューションですが、すべてのコンパイラでサポートされているわけではありません。クロスプラットフォームの互換性については、次のオプションを考慮してください:
プラットフォーム固有の属性:
カスタム マクロ:
非推奨の動作をエミュレートするカスタム マクロを作成します:
#define DEPRECATED(name) \ [[deprecated]] name DEPRECATED(void foo(int));
覚えておいてください、これらのカスタム マクロには制限があり、コンパイラが提供するマクロほど堅牢ではありません。
追加の考慮事項:
以上がC クラスのメソッドを移植可能な形で非推奨にするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。