====== 継承の話(ちょっとまとめ) ====== ==== まずクラスのアクセス権の基本 ==== クラス、宣言、定義、インスタンス、この辺の言葉の使い方は大丈夫だよね?\\ 宣言したクラスの定義部では、自クラス内のメンバのアクセス権にかかわらずすべてのメンバにアクセスできます。\\ クラスのインスタンスからは、そのクラスのpublicメンバにしかアクセスできません**(カプセル化)** main.cppを選択してソースコードを表示してね\\ RUNボタンで実行もできます(エラーを含まないコードのみ) {{url>https://replit.com/@youetsusato/kurasutoakusesuQuan?v=1&embed=true#main.cpp 800,700}} ==== 次に継承したときの継承先から見たアクセス権(public継承) ==== public継承では、\\ * ベースクラスのpubilcメンバ ⇒ publicメンバ * ベースクラスのprivateメンバ ⇒ privateメンバ として、継承先に引き継ぎます。\\ ついでに、継承先のクラスからは、継承元のprivateメンバは直接アクセスできません。(setter,getter経由)\\ つまり、継承関係にあるとはいえ、ベースクラス(継承元(基底クラスの))はサブクラス(継承先(派生クラス))からはカプセル化(隠蔽)されています。\\ 具体的に、ソースコードを見てみましょう\\ main.cppを選択してソースコードを表示してね\\ RUNボタンで実行もできます(エラーを含まないコードのみ) {{url>https://replit.com/@youetsusato/Ji-Cheng-toakusesuQuan?v=1&embed=true#main.cpp 800,1000}}