說我有以下類:我可以在派生類中爲基類的成員別名嗎?
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
關鍵字可以用於別名類型以及例如。將受保護的基類成員納入公共範圍。有沒有類似的機制來混淆成員?
我覺得你要麼需要引用,要麼可能是一個不會佔用派生類空間的函數。 :| – Xeo
謝謝,參考工作。 –