で++理由があるない場合は、この構造体とクラスCではC++
struct foo {
}
のような構造体やクラスを作成する場合は、あなたがCでそうであるように別のものを作成するために、構造体やクラス修飾子を使用する必要がありますか?とき、C++
例
構造体FOOでそれを使用するのが適切であろう。 C++でインスタンス化中
で++理由があるない場合は、この構造体とクラスCではC++
struct foo {
}
のような構造体やクラスを作成する場合は、あなたがCでそうであるように別のものを作成するために、構造体やクラス修飾子を使用する必要がありますか?とき、C++
例
構造体FOOでそれを使用するのが適切であろう。 C++でインスタンス化中
struct
が必要とされていないと言って。 C++では、struct
とclass
の唯一の違いは、struct
のメンバーはデフォルトでpublic
で、class
のメンバーはデフォルトでprivate
です。
:-)
おかげではありません、struct
キーワードは必要ありません。ところで、構造体の定義は、;
の末尾にある必要があります。
Cでは、typedefを使用することで回避できます。 C++では、型が自動的に作成されるため、型を明示的に記述する必要はありません。
C
構文それが似て作るために:
typedef struct {
....
} foo;
は、その後、あなたがそれを使用することができますfoo x;
できますが、する必要はありません。なぜなら、あなたのコードを純粋なCと混ぜるつもりがなければ、それは適切なC++スタイルだからです。その理由は、C++のデザイナーはCのタグの概念が不必要に複雑であると考えていたからです。私は同意する傾向があります。
構造体はC++でパブリッククラスとして動作し、新しい型を作成するので、structキーワードを使用して変数を作成することは純粋にオプションです。 –
@rubixibuc - 適切な 'C++'タグが追加されました。 – Mahesh