class cook { public: cook( char* rice, char* vegetable ); //洗菜,淘米 cook( char* rice); //洗菜 };
洗菜是两个构造函数共有的, 定义两边会很麻烦, 那么怎么办呢
class cook { public: cook( char* rice, char* vegetable ); //洗菜,淘米 cook( char* rice) : cook( char* rice, char* vegetable ) //洗菜
};
淘米这个工作 委托给了 两个参数的 洗菜+淘米 的构造函数。
执行程序时, 会先执行 一个参数的构造函数, 然后再执行两个参数的构造函数。
大大减少了代码量。