借你一秒

沉心静气,平常心,做好小事方成大事。

C++中类的构造函数调用顺序

当建立一个对象时,首先调用基类的构造函数,然后调用下一个派生类的构造函数,依次类推,直至到达派生类次数最多的派生次数最多的类的构造函数为止。简而言之,对象是由“底层向上”开始构造的。因为,构造函数一开始构造时,总是要调用它的基类的构造函数,然后才开始执行其构造函数体,调用直接基类构造函数时,如果无...

2015-09-23 17:02:28

阅读数 3824

评论数 0

单链表反转

从第2个节点到第N个节点,依次逐节点插入到第1个节点(head节点)之后,最后将第一个节点挪到新表的表尾。Node* ReverseList(Node* head)   {       Node *p,*q;        p=head->next;       while(p->ne...

2015-09-23 16:20:52

阅读数 1018

评论数 0

为什么构造函数不能为虚函数

1,从存储空间角度    虚函数对应一个vtable,这大家都知道,可是这个vtable其实是存储在对象的内存空间的。问题出来了,如果构造函数是虚的,就需要通过 vtable来调用,可是对象还没有实例化,也就是内存空间还没有,无法找到vtable,所以构造函数不能是虚函数。2,从使用角度     ...

2015-09-16 08:23:58

阅读数 1020

评论数 2

linux中断处理原理分析

首先需要了解一下中断的概念:一个“中断”仅仅是一个信号,当硬件需要获得处理器对它的关注时,就可以发送这个信号。内核维护了一个中断信号线的注册表,该注册表类似于I/O端口的注册表。      模块在使用中断前要先请求一个中断通道(或中断请求IRQ),然后在使用后释放该通道。用到的API就是reque...

2015-09-04 17:58:01

阅读数 1179

评论数 0

提示
确定要删除当前文章?
取消 删除