Overloading reference operator
Andrew Haley
aph@redhat.com
Sun Apr 25 04:57:00 GMT 2010
On 04/24/2010 06:30 PM, Samkit Jain wrote:
> template<class T>
> MyClass
> {
> public:
> MyClass() : m_data(10) { }
> operator T&() { return m_data; }
> private:
> T m_data;
> };
I think this example does what you want:
template<class T> class
MyClass
{
public:
MyClass() : m_data(10) { }
operator T&() { return m_data; }
T& operator= (const T &t) { m_data = t; return *this; }
private:
T m_data;
};
Can you see why the definition of operator= does the trick?
Andrew.
More information about the Gcc-help
mailing list