C++中对多态的支持
2008-05-26 16:11
519 查看
使用C++基类的对象不能完成多态的特性,比如:
classbase
{
//...
};
classsubclass
{
//...
};
使用一个基类的实体来完成多态会出现问题,如:
basetest;
subclasstestsub;
test=testsub;
test.fun();
这样的话testsub转换成test丢失了部分数据,因此调用fun()时其实是调用base:fun();
通过baseclass的指针或者是引用才可以实现多态的特性。
base*testagain=testsub;
testagain->fun();//OK
相关文章推荐
- “C++的数组不支持多态”?
- C++ 03 数组不支持多态?
- C++对象模型---多态性的支持(单一继承下的多态)
- C++的数组不支持多态”?
- “C++的数组不支持多态”?
- C++支持多态的几种方法
- 伪多态的循环链表C++实现【多类型支持】
- “C++的数组不支持多态”?
- C++支持的多态方式
- "C++的数组不支持多态"? | | 酷 壳 - CoolShell
- 读书笔记: effetive C++ 条款14:总是让base class拥有virtual desctructor , 体现了virtual对多态的支持
- 从内存上解析c++中数组为什么不支持多态
- “C++的数组不支持多态”?
- C++支持的多态方式
- C++支持多态的方法
- C++ 多态
- C++中对多态的理解
- c++ 中的多态
- 【Hibernate】继承映射的支持多态查询
- error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int