如何在使用已弃用的变量/结构时生成警告

时间:2014-04-04 15:32:16

标签: warnings c-preprocessor gcc-warning

对不起,这似乎是一个问题,但是当使用某个变量/结构时,如何让编译器生成警告?

例如,如果我有以下代码:

   int GetAbstractedFoo()
   {
        return 1;
   }
   struct new_name
   {
        int foo;
   }
   typedef new_name old_name;

如何#warning表示“警告”old_name“已弃用请使用new_name”

并进一步扩展如何说“直接警告访问foo已被折旧请使用”abstractedFoo“?

当使用标题时,我在搜索基本#warning之外时遇到了麻烦。

- 谢谢,克里斯

1 个答案:

答案 0 :(得分:0)

啊这么多挖掘,我发现了这篇文章和Michael Platings的工厂答案:

C++ mark as deprecated

我认为,为了我的目的,我将把宏扩展到:

#define DEPRECATE( var , explanation )   var __attribute__((availability(myFramework,introduced=1,deprecated=2.1,obsoleted=3.0, message= explanation)));

DEPRECATE ( typedef old_name new_name, “please use new_name”);