新しいアカウントで始めました。

身の回りの出来事や写真が中心です。

C++でstructとclassの違いは?

2021-06-03 21:58:52 | C、CPP

結論は、ほぼ同じということらしいです。唯一違うのは、structで宣言すると、defaultがpublicで、classで宣言するとprivateとなることらしいです。普通はstructはC言語からの流れですので、メンバ関数は入れない人も多いようです。逆にメンバ関数を入れたい時はclassで宣言する。

structでレコードを定義してます。一応レコードをスペースでクリアしてます。

C++は文字列の代入が出来ないので、コピーしますが、コピーもいろんな条件があるので、一番面倒な(安全な)strncpy_sを使わせられます。日本語があるとこれまた面倒です。

こちらはclassを使ってます。レコードはnewで確保して、それはポインターの配列で指すようにします。これが一番格好いいようです。エラーにはなってませんが、deleteしておかないと、メモリーが開放されないようです。ローカルであれば、終了とともに開放されるようですが、この辺がよく分かりません。

コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« C++でポインタ&アドレスと参... | トップ | 今日はなんの日? »
最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。

C、CPP」カテゴリの最新記事