![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
文章平均质量分 52
lvsheng_bupt
这个作者很懒,什么都没留下…
展开
-
多态性
多态性: 允许将子类类型的指针赋值给父类类型的指针 而用该父类类型指针调用一些函数时,这些函数会根据当前赋值给它的子类对象,以不同方式动作 c++中,多态通过虚函数(virtual)来实现 即,通过指向子类的父类指针调用某一虚函数时,会动态调用当前指向的子类对象重写后的该函数原创 2012-06-24 04:02:55 · 179 阅读 · 0 评论 -
重载(overload)、重写(override)、重定义(redefining)
重载(overload):一个类中,两个名字相同,参数不同的相似函数 重写与重定义的区分: 对父类中的一个函数,在子类中重新实现该函数时 1. 如果父类中该函数声明为virtual即虚函数,则为重写。通过指向子类的父类指针调用该函数时会动态地找到子类重写后该函数调用 2. 如果父类中该函数未被声明为virtual即是非虚函数,则为重定义。通过指向子类的父类指针调用该函数时只会调用与原创 2012-06-24 03:42:52 · 557 阅读 · 0 评论 -
重写(重定义)父类里多个重载中的一个时,父类的其他重载都会被隐藏
#include using namespace std; /*分析: 父类中有两个重载了的虚函数 、两个重载了的非虚函数 子类里各重写(重定义) 了一个虚函数和一个非虚函数(参数为char型的) 但在调用子类对象的这四个函数时,对其中未重写(重定义)的参数为int型的两个函数, 会把int型参数强制转换为适合重写(重定义)了的函数的char型参数然后调用重写(原创 2012-06-24 03:12:26 · 372 阅读 · 0 评论 -
表达示的数据类型
强类型语言如c/c++/java 表达示与变量 都是有数据类型的 一个运算表达示要求运算数都是同一类型,然后运算结果就也是这个类型 当两个(或一个或三个)运算数不是同一类型时,编译器会先把低级别的自动转换成高级别的以达到所有运算数为同一数据类型然后再运算 运算结果也为这一类型 如5/4的结果为1 而不会是1.25(因为1.25是浮点类型而5与4都是整型) 但5.0/4的结果就为1.2原创 2012-07-18 21:48:32 · 222 阅读 · 0 评论 -
内存对齐
编译器给struct内部成员声明内存时,会采取这样的策略: 对一个成员: 能凑在一个字(32位4字节)里就放在一个字里 如果当前这个字的剩余空间放不下它 就放弃当前字的剩余空间 另开一个新的字来放它 而不会当前字的剩余空间先放它的一部分 再开一个新的字放没放下的部分。 在一个字里时:如果能放在一个字节里就放在一个字节里 如果当前这个字节剩余空间放不下它 就另开一个字节。 而这样的原原创 2012-09-26 12:17:46 · 156 阅读 · 0 评论