在C++中,一般的架构设计都是基于多态,基于接口编程。一般的是基类提供接口,子类根据具体的业务逻辑来实现接口,以此来提供程序设计的过程中的可注入性,提高灵活性,但是事实可能不经如此。引入了多态,其实也就是引入了耦合,其强制规定了继承基类和接口的形式,这在整体继承体系中都是不可以更改的。C++0x中的bind函数和function模板类为我们提供了很好的设计解决方案,提供多态基于函数对象,其只和函数的返回值和参数有关。陈硕老师称其为Object-base编程,通过对象来完成功能注入。拳拳到肉(陈老师原话)。...
分类:
其他好文 时间:
2014-07-27 23:41:15
阅读次数:
383
uvm_transaction继承自uvm_object,添加了timing和recording接口,该类是uvm_sequence_item的基类。下边将做剖析1.这个类提供了时间戳属性(timestamp properties),通知事件(notification events),和交易记录(t...
分类:
其他好文 时间:
2014-07-27 23:16:10
阅读次数:
558
2014-07-27星期日18:10:56重温下c++ primer,随意记录。1、基类protected成员12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152...
分类:
其他好文 时间:
2014-07-27 22:55:29
阅读次数:
247
闲着没事就把以前学习时的笔记拿出来整理了一下,个人感觉有点用,就想拿出来跟园友共享一下。有些基础性的内容比如基本概念、语法什么的就不发了。内容:1、构造方法(函数) 2、继承 3、访问修饰符 4、静态和非静态 5、隐藏基类方法 6、重写基类方法 7、抽象方法 8、接口 9、多态和接口 10、值...
分类:
Web程序 时间:
2014-07-27 22:39:09
阅读次数:
516
面对对象语言的设计哲学通常分为以下两种。
第一种思路是基类的作者定下一系列的规则,规定使用该基类的人(派生类的作者)可以干什么事,不能干什么事。
C++,和 Java 就是这一阵营的主要代表。比如说,C++中类定义中的 public, protected, private, virtual 等关键字就是
所谓的规则,规定了类的用户可以使用的成员,必须继承接口,或者实现等等。
这...
分类:
编程语言 时间:
2014-07-27 11:38:16
阅读次数:
227
句柄类存在的意义是为了弥补将派生类对象赋给基类对象时发生的切片效应。例如下面的程序:
multimap basket;
Base base;
Derived derive;
basket.insert(base); //ok,add copy of base;
basket.insert(derive); //ok,but derive sliced down to its base part....
分类:
编程语言 时间:
2014-07-27 11:21:12
阅读次数:
255
root参数用于指定要序列化的根对象,如果省去这一配置,表示要序列化action中的所有属性 ignoreHierarchy 为false时表示要序列化根对象的所有基类 excludeProperties表示排除的序列化的属性includeProperties表示哪些属性被序列化excludeNul...
分类:
Web程序 时间:
2014-07-27 10:32:42
阅读次数:
299
多态也是C++中的一个重要的方面,多态和动态类型,虚函数本质上是指相同的事情。
1 虚函数
类中的成员函数原型前面加上virtual 表面这个函数是个虚函数。虚函数的目的是为了在继承它的派生类中重新定义这个函数,以便于通过基类的指针或引用在运行时对派生类的函数进行调用。
2 派生类和虚函数
派生类一般情况下要重定义所继承的虚函数,有几个注意事项。
虚函数的声明必须和基类中...
分类:
编程语言 时间:
2014-07-26 15:31:24
阅读次数:
265
override1. override是派生类用来重写基类中方法的;2. override不能重写非虚方法和静态方法;3. override只能重写用virtual、abstract、override修饰的方法;4.不能使用修饰符 new、static、virtual 或 abstract 来修改 ...
分类:
其他好文 时间:
2014-07-26 14:28:00
阅读次数:
186
Qt元对象系统提供了对象间的通信机制:信号和槽、以及运行类形信息和动态属性系统的支持,是标注C++的一个扩展,它使得Qt能够更好的实现GUI图形用户界面编程。Qt的元对象系统不支持C++模板,尽管模板扩展了C++的功能,但是元对象提供了模板无法提供的一些特性。
Qt的元对象基于三个事实:
1、 基类Q_OBJECT,任何想使用元对象系统功能的类必须继承自QOBject;...
分类:
其他好文 时间:
2014-07-26 02:37:46
阅读次数:
147