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