C++多态性总结
一,C++多态性概述 多态是指同样的消息被不同类型的对象接受时导致不同的行为。所谓消息是指对类的成员函数的调用,不同的行为是指不同的实现,也就调用不同的函数。换言之,多态指的就是用同样的接口访问功能不同的函数,从而实现“一个接口,多种方法”。 二,多态性分类 面向对象的多态性可以分为4类:重载多态,强制多态,包含多态,参数多态。前面两种统称专用多态,后面两种统称通用多态。 三,各种多态举例说明 1,重载多态: 重载多态包括前面学过的普通函数及类的成员函数的重载还有运算符的重载。 普通函数重载举例: int add(int x, int y) { return x + y; } double add(double x, double y) { return x + y; } float add(float x, float y) { return x + y; } 类的成员函数相当于函数在类的内部实现重载,在这儿就不详细说明了,跟普通函数重载大同小异。 下面重点介绍运算符号重载: 运算符重载是对已有的运算符赋予多重含义,使同一个运算符作用于不同类型的数据导致不同的行为。 运算符重载可以分为重载为成员函数以及重载为非成员函数两种。 重载为成员函数: 其一般语法形式为: 返回类型 operator 运算符(形参表) { 函数体 } 例1:(单目运算符)实现复数类前置++,后置+