Перегрузка оператора в шаблоне в C ++

Я откуда-то прочитал следующий код:

template<class T> class A {
    T a;
public:
    A(T x):a(x) {}
    operator T() const {return a;}   // what is point here?
};


int _tmain(int argc, _TCHAR* argv[])
{
    A<int> a = A<int>(5);
    int n = a;
    cout << n;
    return 0;
}

Что означает строка ниже?

operator T () const {return a;}

8
задан Charles Keepax 23 August 2011 в 15:45
поделиться