0

如果编译器内置函数,有没有办法在编译时检测?例如,像这样:

#ifndef ITOA_FUNCTION
#define itoa myitoaimplementation
#endif

提前致谢。

4

1 回答 1

2

不,没有任何直接的东西。你能做的最好的事情就是从平台、编译器版本等方面进行猜测。

在大多数情况下,我更喜欢其他两条路线之一。一种是只给你自己的实现一个不同于编译器使用的名称,并且无论编译器是否提供类似的东西,都始终使用它。

第二种是将您的此类函数的实现放入单独的文件中,并处理makefile中的存在/不存在,只是决定是否将该文件包含在项目中。

于 2012-07-01T03:49:47.797 回答