結論から・・・
私の読み間違いでした。
あらゆる文脈で、派生クラスは基底クラスとして使える、と、ちゃんと
書いてあります。
いや、その後に参照やポインタのことが書いてあったもんで、どうも読
み間違えたみたいです。
どーも、申し訳ありません。
※・・・う〜ん、ナニと勘違いしたんだろう。
> もっとも、class D : private B とすれば基底クラスへのアクセスは
> 不可能になるので、この場合はコンパイルエラーになります。
> # 今そのことに気付いたんですけど(^^;;;
> 「明示的なキャストが無ければ...」というのはこのことを指していますか?
いえ、いさぎよく「そんな細かなとこまで考えてなかった」と白状して
おきます。
> # スクリプト言語ネタでなくて申し訳ないです。
> # でも、仕事上どうしても気になってしょうがないので(^^;
・・・あの、私、素人なんですけどぉ・・・(汗)
それはとまれ、関数なんかに基底クラスとして呼ばれると、その時点でキャスト
されたことになり、たとえばオーバーロードされたメソッドはご破算になる・・・
というのは間違い無いですよね?
※virtualメソッドでない限り・・・
う〜ん、自分の領域でないネタは、あまりしゃべらんほうがいいなぁ・・・
んでも、勘違いしたまんまより、墓穴掘って恥かいて学習したほうが良い
ですね。
とゆーわけで、今後もあやしげなことを平気で乱発しますので、間違ってたら
ご指導おねがいします☆
機械伯爵