1.关于拷贝函数
void f(const Manager& m)
{
Employee e(m);
e = m;
}
2.关于虚拟函数
“一旦一个成员函数在某个类中被定义成虚拟函数,那么在这个类中必须定义这个虚拟函数的实现代码”
这句话是说必须在class{}的大括号里给出虚拟函数的定义吗?那为什么还可以这样写?:
class Employee {
string first_name, family_name;
char middle_initial;
short department;
// ...
public:
virtual
void print() const;
string full_name() const;
Employee(const string& n, int d);
// ...
};
void Employee::print() const
{
// 适合Employee对象的代码
}