6
キーワードは2つのアンダースコアで始まり、それ以外の場合は1つだけ表示されることがあります。違いはありますか?_declspecと__declspecの違いは?
キーワードは2つのアンダースコアで始まり、それ以外の場合は1つだけ表示されることがあります。違いはありますか?_declspecと__declspecの違いは?
_declspec
は、同じMicrosoft特有のキーワード__declspec
の古い名前です。 C++の標準的な観点からは、2つのアンダースコアは、このような拡張のための単一のアンダースコアよりも正しいです。常に実装に予約されている名前と関数シグネチャの
特定のセット:それは17.4.3.1.2/1に係るだ
- 2つのアンダースコア(_ _)が含まれているか、始まるそれぞれの名前アンダースコアの後ろに大文字のアルファベット(2.11)を付けて使用すると、実装に予約されます。
- アンダースコアで始まる各名前は、 グローバル名前空間の名前として使用するための実装に予約されています。
正しい。つまり、呼び出されるグローバル名前空間で '_declspec()'関数を宣言することはできませんが、 '_declspec()'メソッドを宣言することは許されています。そのため、マイクロソフトはキーワードとして '_declspec'を使用できません。 – MSalters