有一个类通过value返回的另一个连接类'对象公开它的一些功能和数据。 例如,通过begin()和end()方法返回迭代器类的容器类型。它按值返回迭代器,所以
iterator begin();
const iterator begin() const;
将无法工作,我们需要两个独立的类iterator和const_iterator,但由于我们需要在两个类中实现类似的功能,因此违反了代码重用的原则。
有任何变通方法吗?如何在代码重用和保留常量之间找到折衷方案?
答案 0 :(得分:1)
没有。除了创建函数和类的const
和非const版本之外,我从未见过它。