3
考虑使用__has_include()
以下C++代码1Z:__has_include()和后续的#include之间是否存在争用条件?
#if __has_include(<optional>)
# include <optional>
# define have_optional 1
#else
# define have_optional 0
#endif
还能有__has_include(<optional>)
和随后#include <optional>
或不标准的保证无种族行为之间的竞争条件?例如,在__has_include()
检查后立即删除头文件(不太可能)的情况下,#include
会意外失败。
是的,我也这么认为。该标准没有提到太多。 http://eel.is/c++draft/cpp.cond#4中的最后一句似乎支持这一点。 – Rakete1111