C++ 预处理器和名称空间

1.    前言   

    大一开始学c++,在学校的课程只是讲了基本数据类型,后来接触到java,就一直使用java了,完全抛弃了c++。到现在,事实证明,这是错的。抛弃c++是错的,它是基础,不懂就程序员的人生就不完整。

    以后会经常写一些我学习c++的一些笔记,一来达到巩固之效,二来便于复习。

2.    预处理器

    在学C++之前有必要知道C++预处理器是什么?下面看一段代码:

#include <iostream>
using namespace std;

和C一样C++也使用一个预处理器,预处理器有多种(有种是把C++翻译成C来处理的),这里只说处理#开头的编译指令。预处理器在进行主编译之前对源程序进行处理,它会在编译源程序时自动运行。

    上面那第一行代码意思是要将iostream文件的内容随源代码文件的内容一起交给编译器处理,也就是#include <iostream>是要被iostream里面的代码所替代,但是原始文件没有被修改,而是和源代码文件组合一个新的文件,编译的下一阶段将使用它。

    那么为什么使用iostream呢?这是因为我们的程序要和外界通信,而iostream里面就有这个通信的桥梁——cin(输入/读)和cout(输出/写),所以如果我们要和外界通信,那么就要使用iostream里面的方法,这样就要把iostream里面的代码包含进来,才能实现。

3.    名称空间

    第二行是使用名称空间std。顺便说一下名称空间,它的作用是让编译器来区分是使用哪个产品里的同名的东西,比如有两个厂商的产品,假如都有一个叫a()方法,那么在程序中使用a()方法时,编译器就不知道该使用哪个方法,这时厂商会给它的产品一个名称,假如叫ZZero,这使用其a()方法时就该这样写:ZZero::a()。而上面的std就是这里的ZZero。

 

 

    

你可能感兴趣的:(C++,名称空间,预处理器)