转自:http://blog.sina.com.cn/hyiyun近些天,有网友的电脑出现:开机后屏幕一片漆黑,但屏幕中央显示有鼠标指针,并且可移动。按键盘上的不论什么键都没有反应,鼠标也仅可移动,单、双击都无效。说得简单点儿,就是电脑黑屏,仅仅显示鼠标。如上图事实上,我早在11月2日早晨8:30就...
分类:
移动开发 时间:
2014-06-19 00:35:19
阅读次数:
231
链表中的“p->next”p->next到底是指p的下一个节点还是p的指针域呢?p是一个指针,那么p->next也应该是一个指针,即p->next应该是一个地址,因此p->next其实是p指向的节点的指针域(next域),所以p->next还是属于当前节点的,只不过它是下一个节点的地址罢了。所以如果...
分类:
编程语言 时间:
2014-06-17 00:45:56
阅读次数:
348
1.判断单链表是否有环 使用两个slow, fast指针从头开始扫描链表。指针slow 每次走1步,指针fast每次走2步。如果存在环,则指针slow、fast会相遇;如果不存在环,指针fast遇到NULL退出。 就是所谓的追击相遇问题: 2.求有环单链表的环长 在环上相遇后,记录第一次...
分类:
其他好文 时间:
2014-06-17 00:42:49
阅读次数:
260
1. auto_ptr 的设计动机:函数操作经常依照下列模式进行:获取一些资源执行一些动作释放所获取的资源那么面对这些资源的释放问题就会出现下面的两种情况:一开始获得的资源被绑定于局部对象,那么当函数退出的时候,这些局部对象的析构函数被自动的调用,从而自动释放掉这些资源;一开始获得的资源是通过某种显...
分类:
编程语言 时间:
2014-06-16 13:43:39
阅读次数:
351
我个人比较喜欢学习数据结构,而Linux内核中实现的数据结构会是我们去学习、理解和应用数据结构的一个很好途径。这里介绍内核中广泛应用的四种数据结构:链表、队列、映射和二叉树。
链表:
Linux内核讲求高效精简,所以有时需要我们动态去创建和分配内存,这时就要借助链表,我们根据实际情况分配内存后,只需修改链表的指针,仍能索引到刚分配的内存区。链表分单向链表、双向链表和循环链表。...
分类:
系统相关 时间:
2014-06-15 15:19:43
阅读次数:
343
虚函数:虚函数机制的实现是通过虚函数表和指向虚函数表的指针(存放在对象的空间中)来完成的。
1)空间方面:每个类只用一个虚函数表的拷贝,故其占用的空间不是很大。
2)时间方面:虚函数的调用开销包括两次整型加法和一次指针间接引用的开销。
其动态绑定的实现步骤如下:
(a)根据对象的虚指针VPtr找到该对象对应的虚函数表VTable,所需的开销仅是一次偏移量调整(整型加法)加上一次指针间接运算...
分类:
其他好文 时间:
2014-06-15 14:35:31
阅读次数:
251
SmartJS2.0加入OOP的功能。OOP包括klass与factory两个对象。Klass 类继承与其他的类继承相比,smartjs使用了执行指针的概念(后面例子中会介绍),另外提供base基类和初始化控制的扩展功能。首先来看看接口: var _klass = st.klass(name, p....
分类:
Web程序 时间:
2014-06-15 12:56:08
阅读次数:
231
#includevoid change_1(int a, int b);void change_2(int *a, int *b);int main(){ int a = 10; int b = 20; printf("changed before:"); printf("a=%d\tb=%d\n....
分类:
其他好文 时间:
2014-06-15 11:55:24
阅读次数:
249
#includeusing namespace std;struct date{int year;int month;int day;};struct Person{string name;int age;bool gender;double salary;date birth;Person(){c...
分类:
编程语言 时间:
2014-06-15 10:37:12
阅读次数:
207