【結構迷う】C vs. C++【どっちで行こうか】
■ このスレッドは過去ログ倉庫に格納されています
0604599
2011/03/10(木) 02:28:58.26オブジェクト指向で興味深いプログラムを書くためには、
異なる型の異なるオブジェクトの相互作用を書く必要が出てくる。
例えば、
x.func(&y)
みたいなコードを考えよう。
ここでポリモーフィズムが使われてる場合、
yに対する副作用のあり方もxの実行時の型によって変化しうる。
継承は、ちゃんと設計できてれば、xの状態遷移については
全ての派生型で問題ないことを保証するだろうが、
yについてはその限りではない。
なので、xがある特定の型のときだけyが例外を投げることはありうるし、
さらに悪い状況では、ある特定の状況で特定の実行型については
x.func(&y) の呼び出し自体がバグ、ということさえありうる。
なので、継承の基本を理解すれば実行時の型を知る必要が無い、
というのは理解できないんだよね。あんたなら解る?
■ このスレッドは過去ログ倉庫に格納されています