有人可以告诉我 #pragma once
对各种编译器的指令支持的解决方法吗?
我想在我的标题中使用如下内容:
#if _MSC_VER > ... || __GNUC__ > ... || ...
#pragma once
#endif
也许它已经存在于提升源或您的代码中?
原文由 FrozenHeart 发布,翻译遵循 CC BY-SA 4.0 许可协议
有人可以告诉我 #pragma once
对各种编译器的指令支持的解决方法吗?
我想在我的标题中使用如下内容:
#if _MSC_VER > ... || __GNUC__ > ... || ...
#pragma once
#endif
也许它已经存在于提升源或您的代码中?
原文由 FrozenHeart 发布,翻译遵循 CC BY-SA 4.0 许可协议
#pragma once
是包含警卫的非标准替代方案:
#ifndef HEADER_H
#define HEADER_H
//contents of header
#endif
两者都确保标题内容不会在同一个翻译单元中多次粘贴。
原文由 Luchian Grigore 发布,翻译遵循 CC BY-SA 3.0 许可协议
3 回答2k 阅读✓ 已解决
2 回答3.9k 阅读✓ 已解决
2 回答3.2k 阅读✓ 已解决
1 回答3.2k 阅读✓ 已解决
1 回答2.7k 阅读✓ 已解决
3 回答3.4k 阅读
1 回答1.6k 阅读✓ 已解决
使用 包括警卫:
有时你会看到这些结合使用
#pragma once
:#pragma once
得到了相当 广泛的支持。