运行时的动态类型检查(RTTI,Run Time Type Indentifiation)是c++中提供的一项语言机制,它主要用于判断多态对象的具体类型。 为什么不使用c++提供的RTTI功能 但c++中直接提供的RTTI存在一些缺点。首先它提供了取得类名(typeinfo中的name函数)的功能,...
分类:
其他好文 时间:
2014-08-11 11:47:12
阅读次数:
305
------- android培训、java培训、期待与您交流! ----------多态:定义:某一事物的多种存在形态。比如说:动物,它有多种存在形态,猫、狗、猪都是动物的具体存在形态,动物是它们的父类,比如猫是动物的一种,同时可以说动物的一种是猫。父类型引用指向了子类对象。1、多态的体现 父类的...
分类:
其他好文 时间:
2014-08-11 09:53:11
阅读次数:
160
1.抽象是面向对象的基础,有了抽象才会有面向对象的三大特征:继承,封装,多态。
2.层与层联系要依赖抽象,上层依赖抽象,下层也要依赖抽象。
3.总之一句话,编程就是要依赖抽象。等等这类的话,我们朗朗上口。那么回头再来看这些,它到底是什么?
它不是抽象,它是抽象的一些体现,也就是说这都是抽象后的结果,抽象的优点好处。作为程序员的我们要的就是抽象带来的这些结果,但是我们更重要的一个任务是,如何做出“抽象”?把抽象敲出来,有代码来体现。对于程序员来说,只有将想法落实到代码上才是编程,是有质量的编程。
那么何为抽象...
分类:
其他好文 时间:
2014-08-10 21:37:20
阅读次数:
359
当基类确定被继承的时候,析构函数声明为virtual是必须的当返回的派生类的指针或引用的时候,调用析构函数容易发生内存泄漏当基类作为抽象类使用,声明pure virtual析构函数析构函数的顺序————派生类的析构函数先被调用(先析构基类成员)构造函数的顺序————派生类的构造函数先被调用(先构造基...
分类:
其他好文 时间:
2014-08-10 18:07:50
阅读次数:
277
编译时多态--函数重载
编译后生成的中间代码(如GCC生成的.o文件,此时还不是汇编语言)函数名字有变化,看下面两个例子。
void cc_show(const char*str) -> _Z7cc_showPKc
void cc_show(int x) -> _Z7cc_showi
大家可以看到,函数名其实不同,与返回值、函数名、参数有关。函数...
分类:
编程语言 时间:
2014-08-10 15:50:10
阅读次数:
273
通过这次设计模式的交流,发现无论是技术上还是思想上需要提升的空间还有很多。收获比预期的要多的多。给我触动最深的就是以下几点:
1、 面向对象的精华:抽象、封装、继承、多态
2、设计模式六大原则的运用:单一职责、开闭原则、合成聚合、依赖倒装、里氏代换、迪米特
3、让自己思绪飞翔—大胆的去想象,只有去想了、做了,你才知道最后的结果
初次学习代理模式的...
分类:
其他好文 时间:
2014-08-09 23:18:09
阅读次数:
294
面向对象的3个基本要素:封装、继承、多态面向对象的5个基本设计原则:单一职责原则(Single-Resposibility Principle) 其核心思想为:一个类,最好仅仅做一件事,仅仅有一个引起它的变化。单一职责原则能够看做是低耦合、高内聚在面向对象原则上的引申,将职责定义为引起变化的原因,以...
分类:
其他好文 时间:
2014-08-09 23:02:09
阅读次数:
262
多态在C++中是一个重要的概念,通过虚函数机制实现了在程序运行时根据调用对象来判断具体调用哪一个函数。 具体来说就是:父类类别的指针(或者引用)指向其子类的实例,然后通过父类的指针(或者引用)调用实际子类的成员函数。在每个包含有虚函数的类的对象的最前面(是指这个对象对象内存布局的最前面)都有一...
分类:
编程语言 时间:
2014-08-09 22:57:49
阅读次数:
259
C++编程语言是一款应用广泛,支持多种程序设计的计算机编程语言。我们今天就会为大家具体介绍当中C++多态性的一些基本知识,以方便大家在学习过程中对此可以有一个充分的掌握。 多态性能够简单地概括为“一个接口,多种方法”,程序在执行时才决定调用的函数,它是面向对象编程领域的核心概念。多态(polym.....
分类:
编程语言 时间:
2014-08-09 21:27:19
阅读次数:
338
一、重写(override)和重载(overload)的区别二者除了名字相似,其实没什么联系范围不同:重写发生在同一个类的不同方法之间。重载发生在父类和子类自荐。前提:重写要求:方法名相同,参数列表不同,对于返回值类型不要求相同。重载要求:方法名形同,参数列表也相同。重载是实现多态的关键,注意如果父...
分类:
编程语言 时间:
2014-08-09 21:21:19
阅读次数:
306