(6.2.3 / 1)C99標準から
--構造体、共用体、および列挙型のタグ(struct、union、またはenumというキーワードのいずれか*に従うことで明確になります)。
*脚注:タグの名前空間は3つですが、名前空間は1つだけです。
これで、C ++では、次のようなエンティティの競合を回避するために名前空間を使用することがわかりました。
namespace foo {
struct bar // ..define bar..
};
namespace foo2 {
struct bar // ..define bar..
};
Cでは、struct、union、enumは名前空間としてどのように機能しますか?また、脚注は、名前空間が3つではなく1つしかないことを意味しますか?