2009年5月14日星期四

Thinking in C++ 读书笔记 之抽象数据类型

声明 & 定义

  • 声明 declare : 这个名字是什么意思;extern,函数声明在C++中是必须的。其中extern 和 参数名称可以省略。
  • 定义 define :这个名字分配的存储空间;
unsigned char * 是c编译器支持的最小的存储片。

无数据成员的结构总应当有最小的非零长度。

堆和栈:

如果在栈上创建一个变量,那么这个变量的存储单元由编译器自动开辟和释放。
编译器准确地知道需要多少存储容量,根据这个变量的活动范围知道这个变量的生命期。而对
动态内存分配,编译器不知道需要多少存储单元,不知道它们的生命期,不能自动清除。因此,
程序员应负责用free( )释放这块存储。

防止重复引用头文件

典型的防止方法是使用预处理器隔离这个头文件。如果有一个头文件名为 F O O . H,一般
用“名字分解”产生预处理名,以防止多次包含这个头文件。FOO.H 的内部可以如下:
#ifndef FOO_H_
#define FOO_H_
// Rest of header here ...
#endif // FOO_H_
注意:不用前导下划线,因为标准 C 用前导下划线指明保留标识符。

欢迎转载,请注明来自Hi,Coder

没有评论:

发表评论