Typedefint(*healthcalcfunc)(constgamecharacter&)当一个成员函数被声明为虚函数后,其派生类中的同名函数都自动成为虚函数。因此,在子类从新声明该虚函数时,可以加,也可以不加,但习惯上每一层声明函数时都加virtual,使程序更加清晰。友元函数构造函数sta...
                            
                            
                                分类:
其他好文   时间:
2014-08-20 19:30:42   
                                阅读次数:
210
                             
                    
                        
                            
                            
                                http://blog.csdn.net/haoel/article/details/1948051/前言C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛...
                            
                            
                                分类:
编程语言   时间:
2014-08-20 19:23:12   
                                阅读次数:
311
                             
                    
                        
                            
                            
                                class B {public: void mf(); ...};class D: public B { ... };甚至对B,D或mf一无所知,也可以定义一个类型D的对象x,D x; // x是类型D的一个对象那么,如果发现这么做:B *pB = &x; // 得到x的指针pB->mf(); .....
                            
                            
                                分类:
其他好文   时间:
2014-08-20 16:01:52   
                                阅读次数:
191
                             
                    
                        
                            
                            
                                虚函数是动态绑定而缺省参数值是静态绑定的,当基类和派生类对同一个虚函数设置缺省参数值时,只有基类的缺省参数值起作用。对象的静态类型是指你声明的存在于程序代码文本中的类型,对象的动态类型是由它当前所指的对象的类型决定的。即,对象的动态类型表示它将执行何种行为。虚函数是动态绑定的,意思是说,虚函数通过哪...
                            
                            
                                分类:
其他好文   时间:
2014-08-20 15:54:52   
                                阅读次数:
144
                             
                    
                        
                            
                            
                                又一次深入的学习设计模式,发现了很多以前感觉不是问题的问题,这才发现原来自己不是真的理解了。通过这次的深入学习,才开始慢慢感受到OO的魅力所在。
   从C#学习到设计模式,再到机房收费系统个人版和合作版,再到我们做的项目,我们真正的朝着面向对象编程了吗?我的项目中,先不说泛型、委托、集合的利用率,就是基本的继承、多态用的少之又少。
   下面将为大家解说“OO引领编程”之——继承和多态...
                            
                            
                                分类:
其他好文   时间:
2014-08-19 16:40:35   
                                阅读次数:
241
                             
                    
                        
                            
                            
                                C++ 对象的内存布局(下)这篇文章的“单一虚拟继承”和“钻石型虚拟继承”时的类内存布局讲得不太清楚,我有一处疑问,我用的是VS2005,因此记录一下。
 
类继承图如下:
这里:类B被类B1和B2虚拟继承,而B1和B2同时被D继承。
B1的f()、B2的f()覆盖了B的f();
D的f()覆盖了B1的f(),D的f1()覆盖了B1的f1()
D的f()覆盖了B2的f(),D的...
                            
                            
                                分类:
编程语言   时间:
2014-08-19 14:38:24   
                                阅读次数:
228
                             
                    
                        
                            
                            
                                1、多态概念 多态性是对象多种表现形式的体现。比如我们说"宠物"这个对象,它就有很多不同的表达或实现,比如有小猫、小狗、蜥蜴等等。那么我到宠物店说"请给我一只宠物",服务员给我小猫、小狗或者蜥蜴都可以,我们就说"宠物"这个对象就具备多态性。 java中的多态,就是指一个引用(类型)在不同情况下的多种...
                            
                            
                                分类:
编程语言   时间:
2014-08-18 23:21:33   
                                阅读次数:
367
                             
                    
                        
                            
                            
                                接口的作用是用来制定规范,以便让后面的程序根据这个规范来实现。接口的声明方式:interface 接口名{},接口只能声明抽象方法,至少要有一个,但是声明的抽象方法前不需要用abstract修饰。声明一个类实现接口,class demo implements interface_name {},当一...
                            
                            
                                分类:
其他好文   时间:
2014-08-18 20:09:22   
                                阅读次数:
174
                             
                    
                        
                            
                            
                                OC面向对象—多态一、基本概念多态在代码中的体现,即为多种形态,必须要有继承,没有继承就没有多态。在使用多态是,会进行动态检测,以调用真实的对象方法。多态在代码中的体现即父类指针指向子类对象。Animal类的声明Animal类的实现Dog类继承自Animal类Dog类的实现测试程序:二、使用注意代码...
                            
                            
                                分类:
其他好文   时间:
2014-08-18 12:26:54   
                                阅读次数:
163
                             
                    
                        
                            
                            
                                特点一:面向对象类、对象封装、继承、多态特点二:健壮性相对安全的内存管理和访问机制特点三:跨平台通过Java虚拟机(jvm)运行
                            
                            
                                分类:
编程语言   时间:
2014-08-18 00:15:23   
                                阅读次数:
194