★初心者にVisual C++を教えるスレ★ Part22
■ このスレッドは過去ログ倉庫に格納されています
0342デフォルトの名無しさん
2005/12/16(金) 16:52:46class Base
{
public:
virtual func(int n){処理}
virtual func(int* p){ func(*p);} //オーバーロード
};
class Derived : public Base
{
public:
virtual func(int n){処理} //オーバーライド
};
以上のように、派生クラスのオーバーロード元のメンバ関数をオーバーライドしたとき
基本クラスでオーバーロードした関数は派生クラスで呼び出せないのでしょうか?
int* p;
〜処理〜
Derived* derived = new Derived;
derived->func(p);
↑これでコンパイルエラーが出ます。
やっぱり基底クラスでオーバーロードした関数もオーバライドしなければいけないのでしょうか?
■ このスレッドは過去ログ倉庫に格納されています