C++另一种注释
块注释符(/…/)是不可以嵌套使用的。
此外,我们还可以使用 #if 0 … #endif 来实现注释,且可以实现嵌套,格式为:
#if 0code#endif
你可以把 #if 0 改成 #if 1 来执行 code 的代码。
这种形式对程序调试也可以帮助,测试时使用 #if 1 来执行测试代码,发布后使用 #if 0 来屏蔽测试代码。
#if 后可以是任意的条件语句。
下面的代码如果 condition 条件为 true 执行 code1 ,否则执行 code2。
#if conditioncode1#elsecode2#endif
#include <iostream>using namespace std;int main(){cout << "Hello World!" <<endl;#if 1cout << "Hello World!" <<endl;#endif}
头文件
预处理器
确保头文件安全工作的是预处理器,预处理符号是#,而且预处理语句会无视作用域规则。
//mydata.h#pragma once#ifndef MYDATA#define MYDATA //头文件保护符必须唯一,否则出现错误。class MYDATA {public:int m_a;};#endif
一旦#define被预编译器处理,那么再执行#ifndef时就会跳过,所以可以保证不会重复包含,
#progma once是另一种文件的包含形式,这种写法只会包含文件,但是不具有可移植性。但是效率会更高
