ショットの答えは良いものです。彼はそれを主張した
- タグ(構造、ユニオン、列挙の名前)。
構造体、共用体、列挙型のタグは異なる名前空間を持っていると思うので、このコードは完全に問題ありません。
// In the same scope
struct T {};
union T {};
enum T {};
しかし、上記の引用から推測すると、すべてのタグが同じ名前空間を共有しているように見えます。答えは十分に明確ではありませんか、それとも私は間違っていますか?
番号。
すべてのタグは同じ名前空間を共有します。したがって、次のことは許可されていません。
struct T {...};
union T {...};
enum T {...};
C11ドラフトN1570、6.2.3識別子の名前スペースは明示的に脚注を追加します。
32)3つが可能ですが、タグの名前空間は1つだけです。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加