我在做作业时遇到了问题。我面临的问题是: 问题是: ((编写一个程序,使用最大sort_param.use模板编程打印人员/员工的姓名。)) 人员和员工的定义如下:
struct human
{
char name[30];
char * family;
int id;
int sort_param;
};
struct employee
{
human h;
char post[50];
int sort_param;
};
如您所见,打印employee / human的名称取决于传递给函数的类型。 我的问题是: 如何根据数据类型告诉计算机采取行动。我的意思是如果类型是员工那么:
cout << employee.h.name << endl;
如果类型是人类,那么:
cout << human.name << endl;
答案 0 :(得分:1)
使用重载函数,只需使用其中一个参数调用您的函数,这些类型可以是 human 或 employee 。
void print_name(const employee& emp)
{
cout << emp.h.name << endl;
}
void print_name(const human& hum)
{
cout << hum.name << endl;
}
编辑参数。