可能性の重複:
Difference between 'struct' and 'typedef struct' in C++?構造体の宣言にtypedefを使用する理由は?
typedef struct{
....
} mystruct;
と
struct mystruct{
....
};
の間に違いはありますか?
可能性の重複:
Difference between 'struct' and 'typedef struct' in C++?構造体の宣言にtypedefを使用する理由は?
typedef struct{
....
} mystruct;
と
struct mystruct{
....
};
の間に違いはありますか?
Cでは、構造体を宣言する構文はstruct mystruct var;
なので、開発者はしばしば匿名構造体をtypedefしてmystruct var;
という単純な宣言をします。 C++では、struct
キーワードなしで構造体を定義できるので、typedefの使用頻度は低くなります。
C++では役に立たないです。 Cでは、structが独自の名前空間を持っているからです(何かにtypedefしなければstruct T
と書く必要があります)。
C++には大きな違いはありません。
このイディオムは、構造変数をstruct StructName myStruct
と宣言する必要があり、StructName myStruct
が機能しないCでよく使用されます。 C++では必須ではありません。
それは 'c'からの習慣です... – Nim
@mwigdahlええ、申し訳ありませんが、それを見ていない... –