问答题 简单应用 请使用"答题"菜单或使用VC6打开考生文件夹proj2下的工程proj2。此工程包含一个程序文件main.cpp,其中有日期类Date、人员类Person以及排序函数sortByName和主函数main的定义。请在程序中的横线处填写适当的代码,然后删除横线,以实现上述类定义和函数定义。此程序的正确输出结果应为: 按姓名排序 排序前: 张三 男 出生日期:1978年4月20日 王五 女 出生日期:1965年8月3日 杨六 女 出生日期:1965年9月5日 李四 男 出生日期:1973年5月30日 排序后: 李四 男 出生日期:1973年5月30日 王五 女 出生日期:1965年8月3日 杨六 女 出生日期:1965年9月5日 张三 男 出生日期:1978年4月20日 注意:只能在横线处填写适当的代码,不要改动程序中的其他内容, 也不能删除或移动"//**********found**********"。
【正确答案】(1) is_male(is_male), birth_date(birth_date) (2) return strcmp(name, p.name); (3) <
【答案解析】【解题思路】 (1) 主要考查考生对构造函数的掌握情况,Person类在构造函数的成员初始化列表中完成对数据成员is_male、birth_date的初始化。 (2)主要考查考生对成员函数定义的掌握,compareName(const Person &p)中,需要比较调用该成员函数的对象的人名与形参表中对象p的人名,使用strcmp()函数比较,并返回strcmp()函数返回值。 (3) 主要考查考生对成员函数调用的掌握,通过对象birth_date,调用getMonth()函数获取月份。