面试题57:分析最后输出的结果
01 #include<iostream> 02 using namespace std; 03 class B 04 { 05 public: 06 B() 07 { 08 cout<<"default constructor"<<endl; 09 } 10 ~B() 11 { 12 cout<<"destructed"<<endl; 13 } 14 B(int i):data(i)//B(int)works as a converter(int->instance of B) 15 { 16 cout<<"constructed by parameter"<<data<<endl; 17 } 18 private: 19 int data; 20 }; 21 22 B Play(B b) 23 { 24 return b; 25 } 26 27 int main(int argc,char*argv[]) 28 { 29 B t1=Play(5); 30 B t2=Play(t1); 31 return 0; 32 }答:上面程序最后
输出结果如下所示。
constructed by parameter 5 destructed destructed destructed destructed