2009-07-25から1日間の記事一覧

継承におけるコンストラクタとデストラクタの呼び出し順序

C++

http://www.geocities.jp/ky_webid/cpp/language/008.htmlスーパークラス、およびサブクラスともにコンストラクタやデストラクタが存在していた場合、どのクラスのものが呼ばれるのでしょうか?実際に動かしてみます。 #include <iostream> class CBase { public: CBas</iostream>…

8章 継承

C++

http://www.geocities.jp/ky_webid/cpp/language/008.htmlなかなかややこしい話ですが、これはあるクラスのメンバ変数や関数を全て引き継いだ新しいクラスを定義できるということでしょうか。とにかくやってみましょう。実際に動かしてみるのが一番早いです…

コンストラクタで仮想関数呼び出しても適用されない

C++

http://www.geocities.jp/ky_webid/cpp/language/009.htmlコンストラクタ内ではオーバーライドの効果が出ないようですね。 #include <iostream> class CBase { public: CBase(); virtual void foo (); void call (); }; class CSub : public CBase { public: void foo </iostream>…

多態性

C++

http://www.geocities.jp/ky_webid/cpp/language/009.html継承関連で重要なものがこの多態性というものです。簡単に言えば、サブクラス型の変数はスーパークラス型のポインタ変数に代入可能という話です。実際に見てみましょう #include <iostream> class CBase { publ</iostream>…

9章 オーバーライド

C++

http://www.geocities.jp/ky_webid/cpp/language/009.html前回継承というものを学びました。今回このオーバーライドというものなのですが、継承したサブクラスでスーパークラスと同名のメンバ関数を定義し、上書きできるというもののようです。とにかくまず…