悪いタイトルで申し訳ありません...私は次のような基本クラスを持っています:
template<class T>
class GPtr
{
public:
typedef T BaseType;
GPtr& operator=(const BaseType& rhs)
{
...
}
};
私はよく、次のようなサブクラス化された特殊化を作成したいと考えています。
class GraphicPtr : public GPtr<Graphic>
{
...
};
ただし、基本クラスの代入演算子はまだ返されGPtr<Graphic>
ませんGraphicPtr
。コア代入演算子の機能が後で変更される場合に備えて、コードをコピーして貼り付ける必要があるのは面倒です。
基本クラスの代入演算子を定義して、使用中の実際のクラスの型を返す適切な方法はありますか?