如何正确实现迭代器的复制构造函数,知道指向数据对象的指针是私有的?我需要为这个指针创建一个访问器吗?这不是一件坏事吗?实现迭代器复制构造函数
1
A
回答
2
自定义的迭代器本身的实现内部的迭代器拷贝构造函数,就没有必要使隐藏的指针访问,使用或不使用访问:拷贝构造函数将有机会获得它甚至如果它是私人的,所以没有什么可担心的:
template <class T>
class MyIter {
T *private_ptr;
public:
MyIter(const MyIter<T> &other) : private_ptr(other.private_ptr) {}
... // More constructors and member functions
};
0
一个类的所有成员函数都可以访问这个类的数据成员。这也适用于相同类型的不同对象。
class Foo()
{
private:
int bar;
public:
void foobar(Foo & different) { bar = different.bar; }
};
+0
@DieterLücking'foobar()'是一个函数而不是构造函数。 – NathanOliver 2015-02-11 17:41:41
相关问题
- 1. STL迭代器到构造函数中
- 2. 定义迭代器/迭代器构造函数时出错?
- 3. 如何避免使用插入迭代器调用复制构造函数
- 4. 复制构造函数?
- 5. 复制构造函数
- 6. Matlab复制构造函数
- 7. 复制构造函数bug
- 8. doubleLinkedList复制构造函数
- 9. 复制构造函数
- 10. Cython:复制构造函数
- 11. 复制构造函数 - C++
- 12. 链接列表的复制构造函数的正确实现
- 13. 如何在Swift子类中实现复制构造函数?
- 14. 根据运算符实现复制构造函数=
- 15. 矢量实现复制构造函数错误
- 16. 法则三。复制构造函数,赋值运算符实现
- 17. 在构造函数中使用参数实现控制器
- 18. 递归实现链接列表实现的复制构造函数java
- 19. 复制构造函数去基础构造函数并覆盖复制值
- 20. 构造函数或复制构造函数?
- 21. Variadic模板构造函数和复制构造函数
- 22. 字符串类的构造函数和复制构造函数
- 23. 删除复制构造函数break继承构造函数
- 24. 在复制构造函数中复制监听器/观察者
- 25. C++ - 构造函数,复制构造函数,移动构造函数,析构函数
- 26. 复制构造函数[数组] C++
- 27. 复制构造函数参数
- 28. PHP目录迭代器构造函数问题
- 29. noob构造函数中的迭代器运行时错误
- 30. 使用迭代器的通用构造函数
可能,您不需要复制构造函数或赋值运算符为您的迭代器(如果是这样,您可能会有一个可疑的设计)。你可以提供一个例子。 – 2015-02-11 17:39:30
@DieterLücking我似乎并不需要一个,谢谢你的评论。 – 2015-02-11 18:04:30