不理解C++语法

预处理器可能是最好的思想作为一个独立运行的程序,在编译的时候你编译你的程序。它的目的是处理指令。指令的具体指令开始一个#符号和一个换行符结束(不是一个分号)。有几种不同类型的指示,我们将盖的下面。预处理器是不聪明,不理解C++语法;相反,它处理文本在编译器之前得到它。

包括

你已经看到了#包括指令的行动。#包括告诉预处理器将所包含的文件到当前文件的#点包括指令的内容。这是有用的当你的信息需要被包含在多个场合(如向前声明经常是)。

该#包括命令有两种形式:

#包括<文件>告诉编译器查找文件在一个特殊的地方在头文件的运行时库操作系统定义举行。

#包括&quot;文件名&quot;告诉编译器对寻找包含源文件做#目录文件包括。如果失败,它将相同的角括号的情况。

宏定义采取的形式:

#定义标识符替换

每当遇到这种预处理器指令,任何进一步发生identifier被置换取代。标识符是传统上键入字母全部大写,用下划线表示空格。

例如,考虑下面的代码片段:

1
2
3
#define MY_NAME  "Alex"
 
cout << "Hello, " << MY_NAME << endl;
预处理器为以下
1
2
3
#define MY_NAME  "Alex"
 
cout << "Hello, " << "Alex" << endl;

其中,当运行时,打印输出,你好,亚历克斯。

#定义了用这种方式有两个重要性质。首先,他们允许你给一个描述性的名字的东西,如一个数字。

例如,考虑下面的代码片段:

1
int nYen = nDollars * 122;

数如在上面的程序被称为神奇的数字122。一个神奇的数字是硬编码的数量在代码中没有任何上下文的122是什么意思?这是一个转换率?这是什么?它真的不清楚。在更复杂的程序,它往往是不可能知道一个硬编码的数字代表。

这段代码是清晰的:

1
2
#define YEN_PER_DOLLAR  122
int nYen = nDollars * YEN_PER_DOLLAR;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值