阅读量:0
在C++中,迭代器可以通过重载操作符实现自增操作。通常,迭代器使用operator++()
操作符实现自增,也可以使用operator++(int)
实现后置自增操作。
以下是一个示例,展示了如何实现一个简单的迭代器类,并在其中重载operator++()
实现自增操作:
#include <iostream> class Iterator { public: Iterator(int* ptr) : m_ptr(ptr) {} int& operator*() { return *m_ptr; } Iterator& operator++() { ++m_ptr; return *this; } private: int* m_ptr; }; int main() { int arr[] = {1, 2, 3, 4, 5}; Iterator it(arr); std::cout << "Initial value: " << *it << std::endl; ++it; std::cout << "After increment: " << *it << std::endl; return 0; }
在上面的示例中,Iterator
类表示一个简单的迭代器,它包含一个指向整数的指针。operator++()
方法将指针自增,并返回迭代器自身的引用。在main()
函数中,我们创建了一个Iterator
对象并对其进行自增操作,打印了自增后的值。