重载,隐藏,覆盖区别
1. 重载(overload): 同名异参同域(如同类中),virtual可有可无.
2. 覆盖(override): 同名同参有virtual,不同类,派生覆盖基类.
3. 隐藏:
同名不同参异域(如基类和派生类),不管有无virtual(意图可能是为了把责任交给子类).
同名同参没有virtual.
4. 调用:
重载:看参数。
隐藏:用什么就调用什么。
覆盖:调用派生类
warn: 关键是,如果同名不同参异域, 并不是重载而是隐藏!警告.
【本文章出自博客园willaty,转载请注明作者出处,误差欢迎指出~】