#include < iostream > #include < string > using namespace std; class myclass1{ public : char name[ 10 ]; int no; myclass1( char * s, int n = 90 ) { cout << " in myclass1 ==== " << s << endl; strcpy(name,s); no = n; } myclass1() { char s[] = " sss " ; cout << " in myclass1 ++++ " << s << endl; strcpy(name,s); no = 90 ; }}b( " eer " , 54 ); // 在声明时,定义变量,会一开始就会执行 class myclass2{ public : char name[ 10 ]; int no;}; int main(){ myclass1 o; // 这里没有参数就调用没有参数的构造函数 myclass1 a( " wen " , 25 ); // 通过有两个参数的构造函数对a进行赋初值. cout << a.name << ' ' << a.no << endl; myclass1 c = " aaaa " ; cout << c.name << ' ' << c.no << endl; myclass2 d = { " ttt " , 45 }; // 这里的初值赋与方式和C语言中的赋值方式一样 cout << d.name << ' ' << d.no << endl; return 0 ;}