记得刚开始工作时,一位高手告诉我说,longjmp和setjmp玩得不熟,就不要自称为C语言高手。当时我半信半疑,为了让自己向高手方向迈进,还是花了一点时间去学习longjmp和setjmp的用法。后来明白那不单是跳来跳去那样简单,而是一种高级的异常处理机制,在某些情况下确实很有用。 事实上,lon Read More
posted @ 2016-04-05 17:59 findumars Views(1502) Comments(0) Diggs(2)
C++2.0以后全面支持虚函数与虚继承,这两个特性的引入为C++增强了不少功能,也引入了不少烦恼。虚函数与虚继承有哪些特性,今天就不记录了,如果能搞了解一下编译器是如何实现虚函数和虚继承,它们在类的内存空间中又是如何布局的,却可以对C++的了解深入不少。这段时间花了一些时间了解这些玩意,搞得偶都,不 Read More
posted @ 2016-04-05 17:50 findumars Views(290) Comments(0) Diggs(0)
独一无二 静态成员变量 作者:HolyFire 我们学习C++的时候知道静态变量的特性,他不是临时变量,在编译期间就已经产成。用一个例子就能说明问题。 #include <iostream> using namespace std; class A{ public: A(){ cout << "Ca Read More
posted @ 2016-04-05 17:44 findumars Views(644) Comments(0) Diggs(0)
01: 防止一个头文件被重复包含 #ifndef COMDEF_H #define COMDEF_H //头文件内容 #endif 02: 重新定义一些类型,防止由于各种平台和编译器的不同,而产生的类型字节数差异,方便移植。 typedef unsigned char boolean; /* Boo Read More
posted @ 2016-04-05 17:37 findumars Views(619) Comments(0) Diggs(0)
主要用于多任务环境中,一个可重入的函数简单来说就是可以被中断的函数,也就是说,可以在这个函数执行的任何时刻中断它,转入OS调度下去执行另外一段代码,而返回控制时不会出现什么错误;而不可重入的函数由于使用了一些系统资源,比如全局变量区,中断向量表等,所以它如果被中断的话,可能会出现问题,这类函数是不能 Read More
posted @ 2016-04-05 17:36 findumars Views(1944) Comments(0) Diggs(0)