检查编译器是否为 Turbo C++
Check if compiler is Turbo C++
我目前正在处理为 Turbo C++ 设计的遗留代码。为了解决 Turbo C++ 缺少 bool
数据类型的问题,该程序包含以下代码行。
// Necessary when compiling with Turbo C++
enum bool {false, true};
大多数 C++ 编译器无法 运行 具有 error: expected identifier before 'bool'
的程序。虽然我很想切换到更新的编译器,但不幸的是我需要维护此解决方法以实现向后兼容性。
我如何指示该特定代码行只能在 Turbo C++ 中编译?
正如 and 在评论中所建议的那样:
#ifdef __TURBOC__
// Only runs if compiler is Turbo C++
enum bool {false, true};
#endif
来源:http://beefchunk.com/documentation/lang/c/pre-defined-c/precomp.html
我目前正在处理为 Turbo C++ 设计的遗留代码。为了解决 Turbo C++ 缺少 bool
数据类型的问题,该程序包含以下代码行。
// Necessary when compiling with Turbo C++
enum bool {false, true};
大多数 C++ 编译器无法 运行 具有 error: expected identifier before 'bool'
的程序。虽然我很想切换到更新的编译器,但不幸的是我需要维护此解决方法以实现向后兼容性。
我如何指示该特定代码行只能在 Turbo C++ 中编译?
正如
#ifdef __TURBOC__
// Only runs if compiler is Turbo C++
enum bool {false, true};
#endif
来源:http://beefchunk.com/documentation/lang/c/pre-defined-c/precomp.html