作业帮 > 综合 > 作业

C++多态性我还是不太理解C++的多态性的意思,希望能举例说明

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/05/05 02:37:24
C++多态性
我还是不太理解C++的多态性的意思,希望能举例说明
C++中的多态(虽然多态不是C++所特有的,但是C++中的多态确实是很特殊的)分为静多态和动多态(也就是静态绑定和动态绑定两种现象),静动的区别主要在于这种绑定发生在编译期还是运行期,发生在编译期的是静态绑定,也就是静多态;发生在运行期的则是动态绑定,也就是动多态.
静多态可以通过模板和函数重载来实现(之所说C++中的多态主要还是因为模板这个东西),下面举两个例子:
1)函数模板
template
T max(const T& lsh, const T& rhs)
{
return (lsh > rhs) ? lsh : rhs;
}
返回两个任意类型对象的最大值(对象),前提是该类型能够使用>运算符进行比较,并且返回值是bool类型.
使用:
int a = 3; int b = 4;
cout