由其它类型转换 include <iostream. h class complex private float real, imag public complex(float r-0, float i=0) real =r, imag =I, cout<<"Initializing with. < reak<<< imag <<"n void printo cout<<'c<<re imag int maino { complex cI(2.3,4.5),∥创建一个 complex对象 printo ∥用doub类型常量向 complex对象赋值 cI= complex(5) ∥把nt型常量显式转换为 complex类型 1. printO; return 0 16
16 由其它类型转换 #include <iostream.h> class complex{ private: float real,imag; public: complex(float r = 0,float i = 0) { real = r;imag = i; cout<<"Initializing with:"<< real<<','<< imag <<"\n"; } void print() { cout << '('<<real << ',' << imag << ')'<< endl; } }; int main() { complex c1(2.3,4.5); // 创建一个complex对象 c1.print(); c1 = .55; // 用double类型常量向complex对象赋值 c1.print(); c1 = complex(5); // 把int型常量显式转换为complex类型 c1.print(); return 0; }
转换为其它类型 include <iostream h> class complex private float real, imag public complex(float r=0, float 1=0 real =r, imag g operator double∥类型转换函数 i cout<<"Type changed.n void printo i cout <<(<<real <<,<<imag <<)<<endl i complex cI(2.3, 4.5) ∥创建对象c1 cout<(C1*3.333333<end,/隐含地调用类型转换函数 return 17
17 转换为其它类型 #include <iostream.h> class complex{ private: float real,imag; public: complex(float r = 0,float i = 0) { real = r;imag = i; cout<<"Initializing...\n"; } operator double() // 类型转换函数 { cout<<"Type changed...\n"; return double(real); } void print() { cout <<'(' << real << ',' << imag <<')' << endl; } }; int main() { complex c1(2.3,4.5); // 创建对象c1 c1.print(); cout<<(c1*3.33333333) << endl; //隐含地调用类型转换函数 return 0; }