6
我實現像一個容器:對於Class :: Type類型,我可以從const類派生const Class :: Type嗎?
template<typename T>
class Container
{
public:
using value_type = T;
...
};
有從const Container
派生const value_type
的好辦法?
背景:
我已經通過嵌套模板類實現的迭代器類型:
template<typename Container, typename Value>
class iterator_base
{
public:
...
Value& operator*() const;
private:
Container* c;
};
using iterator = iterator_base<Container, value_type>;
using const_iterator = iterator_base<const Container, const value_type>;
這工作好,但第二個模板參數iterator_base
覺得多餘。