当使用sprintf时,编译器警告我该函数已被弃用。
如何显示我自己的编译器警告?
发布于 2010-01-27 07:00:46
#pragma message ("Warning goes here")
在附注中,如果为you want to suppress such warnings,请找到编译器警告ID (对于已弃用的警告,其ID为C4996
),并插入以下行:
#pragma warning( disable : 4996
)
发布于 2010-01-27 07:07:31
虽然没有标准的#warning
指令,但很多编译器(包括GCC、VC、英特尔和苹果)都支持#warning message
。
#warning "this is deprecated"
通常,使用#error
指令(这是标准指令),不仅提出一个警告(人们可以忽略它),而且让编译完全失败:
#if !defined(FOO) && !defined(BAR)
# error "you have neither foo nor bar set up"
#endif
发布于 2010-01-27 07:05:07
要将一个函数标记为已弃用,请使用__declspec(deprecated)
,例如
__declspec(deprecated) void f();
https://stackoverflow.com/questions/2143352
复制相似问题