12.2
#include<iostream>
#include<cstring>
using namespace std;
class Employee{
public:
Employee(long mocode);
void ChangeName(char newname[]);
void Display();
protected:
char name[10];
char address[100];
char city[10];
char sheng[10];
//char code[6]
long code;
};
/*Employee::Employee(){
strcpy(name,"zhangsan");
strcpy(address,"jilingdaxue");
strcpy(city,"changchun");
strcpy(sheng,"jilin");
strcpy(code,"432100");
}*/
/*
//试试冒号语法
Employee::Employee(long mocode=432000):code(mocode){
}
*/
/*//试试带参数的
Employee::Employee(long mocode){
code=mocode;
}*/
//试试以及默认参数的构造函数
Employee::Employee(long mocode=432100){
code=mocode;
}
void Employee::ChangeName(char newname[]){
strcpy(name,newname);//试试string
}
void Employee::Display(){
cout<<name<<endl;
cout<<address<<endl;
cout<<city<<endl;
cout<<sheng<<endl;
cout<<code<<endl;
}
int main(){
Employee a;
a.Display();
}
12.3
复杂,mark一下
#include<iostream>
#include<cstring>
using namespace std;
class Name{
public:
Name(char*name);
void Display();
protected:
char xing[10];
char ming[10];
};
Name::Name(char * name){
for(int i=0;i<5;i++)xing[i]=name[i];
for(int i=5;name[i]!='\0';i++)ming[i-5]=name[i];
}
void Name::Display(){
cout<<xing<<ming;
}
class Employee{
public:
Employee(long mocode);
void ChangeName(char newname[]);
void Display();
protected:
class Name;
char address[100];
char city[10];
char sheng[10];
//char code[6]
long code;
};
/*Employee::Employee(){
strcpy(name,"zhangsan");
strcpy(address,"jilingdaxue");
strcpy(city,"changchun");
strcpy(sheng,"jilin");
strcpy(code,"432100");
}*/
/*
//试试冒号语法
Employee::Employee(long mocode=432000):code(mocode){
}
*/
/*//试试带参数的
Employee::Employee(long mocode){
code=mocode;
}*/
//试试以及默认参数的构造函数
Employee::Employee(long mocode=432100){
code=mocode;
}
void Employee::ChangeName(char newname[]){
Name(newname);//试试string
}
void Employee::Display(){
Name.Display();
cout<<address<<endl;
cout<<city<<endl;
cout<<sheng<<endl;
cout<<code<<endl;
}
int main(){
Employee a;
a.Display();
}