抽象クラスの使い方について

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
仁科

抽象クラスの使い方について

#1

投稿記事 by 仁科 » 9年前

お世話になります。
今回、初めて0から物を作っているC++初心者、もといプログラミング初心者です。
抽象クラスの使い方が分からず、困惑しております。

以下、疑似コードです。
抽象クラス
 メソッドA:戻り値は「抽象クラス*(自分の型のポインタ)」

子クラスA(抽象クラスを継承)
 メソッドA:ファイルから文字列を取得して分割後、メンバ変数A1とメンバ変数A2に入れる。戻り値は「this」。

子クラスB(抽象クラスを継承)
 メソッドA:ファイルから文字列を取得して分割後、メンバ変数B1に入れる。戻り値は「this」。

main
 抽象クラス* BaseClass;
 Vextor<抽象クラス*> BaseClassArrayList;
 BaseClassArrayList.pushback(BaseClass->メソッドA); // 子クラスのポインタが帰ってくる?

上記のようにすると、visual C++ 2015にて、「コンパイラ エラー C2440」が、発生します。

最終的には、子クラスのインスタンスから、メンバ変数を取得して、
処理に使いたいのですが、方法自体、間違っているのでしょうか?
ご教授のほど、よろしくお願い致します。

仁科

Re: 抽象クラスの使い方について

#2

投稿記事 by 仁科 » 9年前

すいません。質問を訂正します。

コンパイラ エラーの原因は、実ソースの記載ミスでした。
修正したところ、エラーは発生しなくなりました。

ですので、質問内容を、「子クラスのデータを取得する方法」に変更させて下さい。
よろしくお願い致します。

hide

Re: 抽象クラスの使い方について

#3

投稿記事 by hide » 9年前

質問に擬似コードはやめたほうがいいかと思います。
質問者さんがこうだと思っていることと、実際の動かしているコードの間で別のことをやってしまう可能性があります。
実コード出せない理由とかあるのでしょうか?

閉鎖

“C言語何でも質問掲示板” へ戻る