面向对象另外一个核心概念是多态性。所谓多态,是指一个名字(或符号)具有多种含义。这对仿真客观世界以及提升软件的灵活性有相当重要的意义。 在面向对象的程序设计语言中,多态是通过重载(overload)来实现的。 C语言中,有许多系统预定义的运算符例如“+”,它可以用于整数类型数据,也可用于实数类型数据,虽然使用相同的运算符,但生成的目标代码不相同。这时,“+”运算符具有两种不同的解释(实现代码)。也就是说,像“+”这样的运算符在C语言中已经被重载。不幸的是,C语言仅支持少量有限的运算符重载。 C++语言扩充了这个功能,允许已存在的预定义运算符由用户在不同的上下文中做出不同的解释。即:如果是类类型