1957

无聊蛋疼的1957写的低端博客
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

the operator of c++

Posted on 2013-01-22 20:27  1957  阅读(128)  评论(0编辑  收藏  举报
#include <iostream>

class TT
{
    public:
    int a;
    TT(){a=0;}
    TT(int xa){a=xa;}
    TT(const TT& xa){a=xa.a;}

    operator int(){return a;} //hidden convert TT to int
    operator char(){return 48+a;}
    void operator()(){std::cout<<"xyz"<<std::endl;} //functor
};

int main()
{
    TT a;
    TT b(2);
    int ia = a;
    int ib = b;
    char cc = a;
    std::cout<<ia<<std::endl;
    std::cout<<ib<<std::endl;
    std::cout<<cc<<std::endl;
    //std::cout<<a(5)<<std::endl;
    a();
}