は、私は以下のクラスがあるとしましょう:私の派生クラスで派生クラスの基本クラスのメンバーに別名を付けることはできますか?
template <class T>
class Base {
protected:
T theT;
// ...
};
class Derived : protected Base <int>, protected Base <float> {
protected:
// ...
using theInt = Base<int>::theT; // How do I accomplish this??
using theFloat = Base<float>::theT; // How do I accomplish this??
};
は、私が派生クラスで、より理にかなって、より直感的な名前を使用してBase::theT
を参照したいと思います。私はGCC 4.7を使用していますが、これはC++ 11の機能をかなりカバーしています。上記の例でどのように試したか、このようなことを達成するためにusing
ステートメントを使用する方法はありますか?私はC++ 11で、using
というキーワードをエイリアスの型として使うことができることを知っています。保護された基底クラスのメンバをpublicスコープにします。メンバのエイリアシングに類似のメカニズムはありますか?
私はあなたが参照を必要とするか、おそらく派生クラスのスペースを占有しない関数だと思います。 :| – Xeo
ありがとうございました。 –