自己实现一个迭代器

1.value_type的使用

#include <iostream> 
using namespace std; 

template<class T>
class B
{
public:
	typedef T value_type;
	T* ptr;
	B(T* p = 0) : ptr(p) {};
	T& operator*() const { return *ptr; }
};
template<class Iterator>
typename Iterator::value_type
func(Iterator a)
{
	return *a;
}
int main()
{
	B<int> b(new int(5));
	cout << func(b) << endl;
	return 0;
}

结果:5

发布了81 篇原创文章 · 获赞 4 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/m0_37313888/article/details/105342046