是跨平台和跨编译器 #error 指令
Is #error directive crossplatform and crosscompiler
我知道#error
指令至少适用于GCC和MSVC
#if !defined(__cplusplus)
#error C++ compiler required.
#endif
但它是跨平台和跨编译器的吗?也许它是某些标准的一部分吗?
附言。因为即使查看GCC和MSVC手册中给出的示例,也可以看到差异。虽然它与引号或不适用于引号,但它给人一种悲伤的感觉,它可能以某种方式依赖于编译器。
海湾合作委员会示例
#error "Won't work on ..." // quotes here
MSVC 示例
#error C++ compiler required. // no qutes
是的。它是 C 和 C++ 中的标准预处理器指令。
引用: http://en.cppreference.com/w/cpp/preprocessor/error http://en.cppreference.com/w/c/preprocessor/error
相关文章:
- "error: no matching function for call to"构造函数错误
- 使用C++库在Android项目中修改gradle中的cmake参数,用于插入指令的测试
- C++,OpenCV,尝试显示图像时"OpenCV(4.3.0) Error: Assertion failed (size.width>0 && size.height>0)"此错误
- 无法编译 rtmidi 测试 cmidiin.cpp 文件, 非法指令
- C++:对不存在的命名空间使用命名空间指令
- 使用 LuaBridge 将 LuaJIT 绑定到C++会导致"PANIC: unprotected error"
- OpenMP卸载说'fatal error: could not find accel/nvptx-none/mkoffload'
- C++错误:"error: int aaa::bbb is protected within this context"
- 函数名是c中该函数的第一条指令的地址吗
- 尝试链接我的着色器时,我收到错误代码"error c5145 must write to gl_position"
- C++,在int数组中输入字符串或字符会输出0,而不是ascii或error
- 错误:无效的预处理指令 #i 的意思是 #if?
- 使用 cmake 的 LLVM 构建在 tsan_libdispatch_mac.cc 期间失败; "Error: conflicting types for ..."
- C++ "error: invalid use of void expression"
- struct.error:解压缩 C++ 结构时,解包需要 288 字节的缓冲区
- 组装指令中乘法的下部和上部是什么
- 如何修复"error: ‘_1’ was not declared in this scope"?
- OpenMP 与有序和关键指令并行
- 是跨平台和跨编译器 #error 指令
- #error "SSE2 指令集未启用"时包含 <emmintrin.h>