C/C++头文件保护:#ifndef和#pragma once

如何连接多个cpp文件及头文件使用可参考这篇文章:关于如何将多个Cpp文件关联起来

两种方式 

为避免头文件重复包含,C/C++里有两种方式:

 #ifndef方式如下:

#ifndef __FILE_H
#define __FILE_H

...//声明

#endif

另一种就是直接在文件起始包含这句话 #pragma once

 

两者的区别

#ifndef与#pragma once区别
两种方式 #ifdef #pragma once
本质 由编译器保证
隐患 宏重名导致冲突 有的编译器不支持
移植性 稍差(原因见上条)
运行时间 更长一点(编译器打开文件,查看是否重复) 稍短
作用 重复内容代码块/文件 只适用同一文件
范围 可针对文件中部分代码 整个文件

 

你可能感兴趣的:(C++)