抽象クラスの使い方について
Posted: 2016年7月16日(土) 14:22
お世話になります。
今回、初めて0から物を作っているC++初心者、もといプログラミング初心者です。
抽象クラスの使い方が分からず、困惑しております。
以下、疑似コードです。
抽象クラス
メソッドA:戻り値は「抽象クラス*(自分の型のポインタ)」
子クラスA(抽象クラスを継承)
メソッドA:ファイルから文字列を取得して分割後、メンバ変数A1とメンバ変数A2に入れる。戻り値は「this」。
子クラスB(抽象クラスを継承)
メソッドA:ファイルから文字列を取得して分割後、メンバ変数B1に入れる。戻り値は「this」。
main
抽象クラス* BaseClass;
Vextor<抽象クラス*> BaseClassArrayList;
BaseClassArrayList.pushback(BaseClass->メソッドA); // 子クラスのポインタが帰ってくる?
上記のようにすると、visual C++ 2015にて、「コンパイラ エラー C2440」が、発生します。
最終的には、子クラスのインスタンスから、メンバ変数を取得して、
処理に使いたいのですが、方法自体、間違っているのでしょうか?
ご教授のほど、よろしくお願い致します。
今回、初めて0から物を作っているC++初心者、もといプログラミング初心者です。
抽象クラスの使い方が分からず、困惑しております。
以下、疑似コードです。
抽象クラス
メソッドA:戻り値は「抽象クラス*(自分の型のポインタ)」
子クラスA(抽象クラスを継承)
メソッドA:ファイルから文字列を取得して分割後、メンバ変数A1とメンバ変数A2に入れる。戻り値は「this」。
子クラスB(抽象クラスを継承)
メソッドA:ファイルから文字列を取得して分割後、メンバ変数B1に入れる。戻り値は「this」。
main
抽象クラス* BaseClass;
Vextor<抽象クラス*> BaseClassArrayList;
BaseClassArrayList.pushback(BaseClass->メソッドA); // 子クラスのポインタが帰ってくる?
上記のようにすると、visual C++ 2015にて、「コンパイラ エラー C2440」が、発生します。
最終的には、子クラスのインスタンスから、メンバ変数を取得して、
処理に使いたいのですが、方法自体、間違っているのでしょうか?
ご教授のほど、よろしくお願い致します。