链接属性决定如何处理在不同文件中出现的标识符。标识符的作用域也它的链接属性有关,但这两个属性并不相同。
没有链接属性的标识符(none)总是被当作单独的个体,也就是说该标识符的多个声明被当作独立不同的实体。
internal链接属性的标识符在同一个源文件内的所有声明中都指同一个实体,但位于不...
分类:
其他好文 时间:
2014-04-29 20:19:24
阅读次数:
525
// Listing 8.9 - Demonstrates a stray pointer
typedef unsigned short int USHORT;#include int main(){ USHORT * pInt = new
USHORT; // 声明第一个指针,分配了一块...
分类:
其他好文 时间:
2014-04-29 18:46:01
阅读次数:
470
最近在看读《STL源码剖析》,看到Traits编程技法这节时,不禁感慨STL源码作者的创新能力。那么什么是Traits编程技法呢?且听我娓娓道来:
我们知道容器的许多操作都是通过迭代器展开的。其中容器类似于数组,迭代器类似于指针。我们用数组来写个例子:1 int arr[5] = {1,2,3...
分类:
其他好文 时间:
2014-04-29 18:15:15
阅读次数:
463
1、宏定义swap,加括号有什么意义 #define swap(x,y) x =
(x)+(y);y=(x)-(y);x=(x)-(y)
加括号是为了处理表达式参数(即宏的参数可能是个算法表达式)时不出错,因为宏替换就是文本替换,所以如果有以下情况: #define COM(A,B)
(A)*(B)...
分类:
其他好文 时间:
2014-04-29 17:47:29
阅读次数:
585
构造函数不能是虚函数。但有时候确实需要能传递一个指向基类对象的指针,并且有已创建的派生类对象的拷贝。通常在类内部创建一个Clone()方法,并设置为虚函数。//Listing
12.11 Virtual copy constructor#include using namespace std;cla...
分类:
编程语言 时间:
2014-04-29 17:26:52
阅读次数:
522
聚合数据类型能够同时存储超过一个的单独数据。
c语言提供了数组和结构体。1.1234567891011121314#include #include void main(){struct {int
a;}x,*b;int c[2]={1,2};x.a=1;b=c;printf("%d \n",b[1...
分类:
其他好文 时间:
2014-04-29 17:05:12
阅读次数:
395
不完整声明1234567891011121314151617181920212223242526/*
方法一 */struct tag_a{struct tag_b *bp; /* 这里struct tag_b 还没有定义,但编译器可以接受 */int
value;};struct tag_b{st...
分类:
其他好文 时间:
2014-04-29 16:54:53
阅读次数:
366
函数指针typedef void (*lpFunction)();
//定义一个无参数、无返回类型的函数指针类型lpFunction lpReset = (lpFunction)0xF000FFF0;
//定义一个函数指针指向CPU启动后所执行的第一条指令的位置lpReset(); //调用软重启函...
分类:
其他好文 时间:
2014-04-29 10:13:45
阅读次数:
373
栈是限定仅在表尾进行插入或者删除操作的线性表。因此,对栈来说,表尾端有特殊含义,称为栈顶,表头端为栈底。不含元素的空表称为空栈。栈的主要特点就是后进先出(LIFO);栈的表示和实现
顺序栈,即栈的顺序存储结构是利用一组地址连续的存储单元依次存放自栈底到栈顶的数据元素,同时附设指针top指示栈顶...
分类:
其他好文 时间:
2014-04-29 09:23:46
阅读次数:
393
qsort(&g_AMTBuf[g_dwAMTLenth], m_nCount,
sizeof(12), Compare);参数说明:1.待排序数组首地址;2.数组中待排序元素数量;3.各元素的占用空间大小;4.指向函数的指针。1 int
Compare(const void *a,const vo...
分类:
其他好文 时间:
2014-04-29 09:12:46
阅读次数:
398