您的位置:首页 > 编程语言 > C语言/C++

Thinking in C++读书笔记(四)---数据抽象

2014-03-08 10:38 204 查看

第四章 数据抽象

1 new--delete:

数组的销毁一定要使用delete [];明确的告知编译器这是一个内存块。

2 C中名字问题: 

在C中最大的障碍就是名字冲突。对于函数,C使用单个名字空间,当连接器查找一个函数时,他在一个主表中查找,而且,当编译器白泥臆一个单元时,他只能对带有指定名字的单个函数进行处理。加入有连个厂商都觉得init和clean是好名字,如果处理单元包含了这样两个库,C编译器会报错。为了解决这个问题,C库的厂商会在他们的函数前加上一个独特的字符串。在C++中完美的解决了这个问题。

3 在面向对象中,调用对象的一个方法相当于是向对象发送消息。这样对象的概念就更深入人心了。

4 头文件多次声明问题:

很多库例如<iostream>已经智能的实现了这个问题,但是在我们自己写头文件时,为了防止这个问题,我们应该在其中加一些东西:

#define FLAG
#ifdef FLAG
/*...........*/
#endif


5 头文件中的 命名空间:

在头文件中绝对不可以加入using ...的命名空间,因为这样使用指令去除了对这个特定名字空间保护。

6 全局作用域解析:

编译器默认选择的名字(“最接近”的名字“)可能不是我们要用的名字,作用域解析符可以避免这种情况.S::F();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐