私が動作するように次のコードのビットを作るしようとしている...私が行うことができるようにしたいどのような 仮想関数...なぜこれがプライベートで?
#include <list>
template <typename T>
class container{
public:
virtual T func_x(){
T temp;
//do stuff with list<t> test
return temp;
}
private:
std::list<T> test;
};
template <typename T>
class container2 : public container<T>{
public:
virtual T func_x(){
T temp;
//do different stuff with list<T> test
return temp;
}
};
は
container<T> x;
container2<T> y;
を宣言し、yがアクセス権を持っている持っていることができるようですxのすべてのパブリック関数に、それはfunc_xのために異なった動作をすることを除いて。
私が今持っている問題は、クラスにcontainer2でfunc_xが使用できないことです。
std::list<T> test;
私はクラスコンテナを完全に公開しようとしました。まだダイスはありません。これはできますか?
ありがとうございます!
フォローアップの質問にマッチするように私の回答を編集しました。また、将来、元の質問を変更せず、新しい質問をしてください。それは、質問と回答を読む他の人に誤解を招く可能性があります。 –
が解決しました。ありがとう! –