前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C++之include guard

C++之include guard

作者头像
灯珑LoGin
发布2022-10-31 10:00:46
4710
发布2022-10-31 10:00:46
举报
文章被收录于专栏:龙进的专栏

有时候,我们在大的软件项目中需要避免一个头文件被同一个源文件引用多次,这个时候就需要用到include guard这个头文件保护符。

下面这串代码演示了如何使用#ifndef和#endif来避免头文件被重复引用

代码语言:javascript
复制
#pragma once
//Time Class definition
//member functions are declared in time.cpp

//prevent multiple inclusions of header
#ifndef TIME_H
#define TIME_H

//time class definition
class time
{
public:
	Time();//constructor
	void setTime(int, int, int);//set hour, minute and second
	void printUniversal() const;//print time in universal-time format
	void printStandard() const;//print time in standard-time format

private:
	unsigned int hour;//0-23
	unsigned int minute;//0-59
	unsigned int second;//0-59

};

#endif // !TIME_H

我们可以看到,被包括住的部分,有一个判断,就是,如果头文件已经被引用,就不执行下面的操作。如果没有被引用,就define一下这个time.h

注意,我们需要用大写来代表头文件的名称,然后使用下划线来代表’ . ‘

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020年10月28日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档