class与struct使得变量局部化,不会被误操作误用

 

 

 

 防卫式声明

 

 

C++中头文件防卫式声明(Header Guard)是一种防止头文件被多次包含的机制,通常用于避免由于头文件的重复包含导致的编译错误。它的实现方式是在头文件的开头和结尾加上一些特定的代码,以确保头文件只被编译一次。

(

 

 

 来源:https://www.cnblogs.com/swefii/p/10505674.html 侵删)

 

头文件防卫式声明的基本格式如下:

1 #ifndef HEADER_GUARD_NAME
2 #define HEADER_GUARD_NAME
3 
4 //头文件内容
5 
6 #endif /* HEADER_GUARD_NAME */

其中,HEADER_GUARD_NAME是头文件的标识符,一般以文件名全大写加下划线的形式命名,例如 MY_HEADER_H

头文件的开头会检查是否已经定义了 HEADER_GUARD_NAME,如果没有定义,则会定义它。这样,在下次包含该头文件时,由于 HEADER_GUARD_NAME 已经被定义,就不会再次包含头文件的内容,从而避免了重复包含的问题。头文件的结尾处会用 #endif 指令关闭 #ifndef 指令开启的条件编译块。

下面是一个示例:

 1 #ifndef MY_HEADER_H
 2 #define MY_HEADER_H
 3 
 4 #include <iostream>
 5 
 6 class MyClass {
 7 public:
 8     void sayHello() {
 9         std::cout << "Hello, World!" << std::endl;
10     }
11 };
12 
13 #endif /* MY_HEADER_H */

 

这个头文件声明了一个名为 MyClass 的类,然后定义了 MY_HEADER_H 作为头文件的标识符,以确保头文件只会被编译一次。

 

posted on 2023-04-23 17:04  在野武将  阅读(84)  评论(0编辑  收藏  举报