使用头文件预编译指令和include guard
头文件预编译指令是指将头文件中已经包含的内容缓存起来,遇到多次包含时可以避免重复编译。头文件预编译指令为“#pragma once”,放在头文件的开头即可。例如:
#pragma once
// 头文件的内容
另一种常用的方法是使用include guard,其原理是在头文件的开头和结尾分别加上宏定义,并通过条件编译保证只有第一次包含时宏定义才会起作用,避免了重复包含。例如:
#ifndef EXAMPLE_H
#define EXAMPLE_H
// 头文件的内容
#endif /* EXAMPLE_H */
上一篇:避免C++中的歧义
下一篇:避免C++中同一库的第三方冲突