C++要点(三)
来源:互联网 发布:gif软件制作工具 编辑:程序博客网 时间:2024/05/20 23:57
1. 除了构造函数外, 任意非static成员函数都可以是虚函数。保留字virtual只在类内部的成员函数声明中出现,不能用在类定义体外部出现的函数定义上…
2. 派生类只能通过派生类对象访问其基类的protected数据成员, 派生类对其基类对象的protected成员没有特殊的访问权限.另外,基类的protected成员函数只能被派生类成员函数访问,而不能被派生类对象访问, 如下面的sub.baseFun(); 会出现编译错误…
3. C++中的函数调用默认不适用动态绑定。要出发动态绑定,必须满足两个条件:(1)只有指定为虚函数的成员函数才可能进行动态绑定,成员函数默认为非虚函数, 非虚函数不能进行动态绑定。(2)必须通过基类类型的引用或指针行函数调用。
4. 使用基类类型的引用或指针,在编译期间是不知道指针或引用所绑定的对象的类型的, 基类类型的引用或指针可以引用基类类型的对象,也可以引用派生类类型的对象。无论实际对象具有那种类型, 编译器都将他当做基类类型的对象,将派生类对象当做基类对象是安全的,因为每个派生类对象都拥有基类子对象。 而且, 派生类继承基类的操作,即, 任何可以在基类对象上执行的操作也可以通过派生类对象使用。
5. 非虚函数总是在编译时根据调用该函数的对象,引用或是指针的类型而确定。
6.派生类虚函数调用被覆盖的对应的基类函数时,必须显示的使用作用域操作符。如果不使用,则函数调用会在运行时确定并且将是一个自身调用, 从而导致无穷递归。当显示的使用作用与操作符时,函数的调用在编译时就确定。
7.如果在构造函数或析构函数中调用虚函数,则运行的是为构造函数或析构函数自身类型定义的版本。
8. 在基类和派生类中使用同一名字的成员函数时,在派生类作用域中派生类成员将隐藏掉基类成员, 即使他们的函数原型不同。要想访问基类的同名函数, 需要使用作用域操作符,如下:
- C/C++要点全掌握(三)——const
- 抢反弹三要点
- C++要点(三)
- 时间管理三要点
- iOS面试要点三
- 上海科目三要点
- hadoop要点(三)
- 复习C要点
- C要点(一)
- C语言要点总结
- 嵌入式C编程要点
- C语言解惑要点
- c 函数要点
- C++/CLI 要点
- C语言复习要点
- Objective-C基础知识要点
- 《Effective C++》要点摘录
- C语言要点
- 1298 数制转换
- 意外的收获(隐匿的电脑串并口)
- family
- 方便的webpart开发及SmartPart with AJAX无法使用问题
- struts action 属性
- C++要点(三)
- 单链表中的插入与删除
- rizzoli & isles
- 自勉
- ASP中cookies的相关操作
- 好的人好的事
- Java--数组
- String经典问题
- MOSS 开发资源收藏