(1)假设一个名字在派生类的作用域内无法正确解析,则编译器将继续在外层的基类作用域中寻找该名字的定义。(2)派生类的成员将隐藏同名的基类成员。(3)除了覆盖继承而来的虚函数之外,派生类最好不要重用其它定义在基类中的名字。(4)声明在内层作用域的函数并不会重载声明在外层作用域的函数。定义在派生类中的函...
分类:
编程语言 时间:
2014-07-09 22:18:13
阅读次数:
228
参考文章:http://blog.chinaunix.net/uid-25132162-id-1564955.htmlhttp://blog.csdn.net/haoel/article/details/1948051/一、虚函数与继承 1、空类,空类单继承,空类多继承的sizeof#include...
分类:
编程语言 时间:
2014-07-09 21:44:59
阅读次数:
329
《OOC》全名是《Object-oriented Programming with ANSI-C》,步步为营地讲述了作者用C来实现封装、继承、多态、异常处理和自动化工具的过程。这本书吸引我的理由如下: 我也研究过OOC的问题,想和作者对比对比,取长补短。 学习C实现异常处理try{}ca...
分类:
其他好文 时间:
2014-07-09 20:51:09
阅读次数:
197
在实现多态时候,基类的析构函数应该写成virtual。在用基类申明实例化的子类对象,在delete时候,如果基类不是virtual的析构函数则不能调用进子类的析构函数class Base{public: Base(); virtual ~Base();public: char *m...
分类:
编程语言 时间:
2014-07-09 00:34:22
阅读次数:
201
1.动态与静态的概 静态编译:在编译时确定类型,绑定对象,即通过。 动态编译:运行时确定类型,绑定对象。动态编译最大限度发挥了java的灵活性,体现了多 态的应用,有以降低类之间的藕合性。2.利用反射机制能获得什么信息 一句话,类中有什么信息,它就可以获得什么信息,不过前提是得知道类的名字,要不.....
分类:
编程语言 时间:
2014-07-06 19:20:21
阅读次数:
364
#include#includestruct test{ char name[20]; void (*func)(char *);};void tttfunc(char *name){ printf("current is %d\n",__LINE__); printf("%s\n",name);}...
分类:
系统相关 时间:
2014-07-06 15:44:49
阅读次数:
223
您对类和面向对象的理解如何。1类的介绍1)为什么要使用oop?(object-oriented programming) oop有3个特点,封装性,继承性,多态性2)实例化的3中方法Text mytext=new Text() new 生成一个对象,对象变量mytext仅仅是对 对象 的一个引用,....
分类:
其他好文 时间:
2014-07-06 14:19:55
阅读次数:
234
1.C++中的多态
(1)多态性:同一个函数的调用可以进行不同的操作,函数重载是实现多态的一种手段。
(2)联编:在编译阶段进行联接,即是在编译阶段将一个函数的调用点和函数的定义点联接起来。
A.静态联编:在编译阶段就完成的函数联编——函数重载。
B.动态联编:在程序的运行阶段由系统自动选择具体的函数——虚函数。
注:C++的多态主要指的就是动态联编。
2.虚函数
(1)虚函数是在函...
分类:
编程语言 时间:
2014-07-06 12:42:45
阅读次数:
157
条款1:视C++为一个语言联邦
1.1 将C++视为一个由相关语言组成的联邦而非单一语言.
1.2 视C++由四块次语言组成:
C:区块,语句,预处理器,内置数据类型,数组,指针 等等来自于C语言的特性.
Object-Oriented C++:封装,继承,多态,virtual函数 等等面向对象特性.
Template C++:泛型编程.
STL:标准库.
条款2: ...
分类:
编程语言 时间:
2014-07-06 09:20:51
阅读次数:
213
怎么实现多态2-接口接口是定义一种能力,规定子类能干什么和抽象类有些相似,解决类的单根继承。接口可以实现多继承案例鸟-麻雀sparrow,鸵鸟ostrich,企鹅penguin,鹦鹉parrot鸟能飞鸵鸟,企鹅不能。。。你怎么办练习:从学生,老师,父类Person,定义一个接口摄影Iphotogra...
分类:
其他好文 时间:
2014-07-05 22:08:22
阅读次数:
533