隐藏依赖项的继承属性?

Nas*_*zta 9 c++ c++14

我有一个巨大的图书馆和几个计划退役的课程。

例如:

class [[deprecated]] OldApi {
// details
};
Run Code Online (Sandbox Code Playgroud)

这个想法是不推荐使用这个类的所有东西。例如:标题中的隐藏依赖项如下所示:

// on API we have no old API dependency
void hiddenDependency();
Run Code Online (Sandbox Code Playgroud)

并在编译单元中:

void hiddenDependency()
{
  OldApi inst;
  // work on it/do something
}
Run Code Online (Sandbox Code Playgroud)

我有很深的依赖图,所以手动解决方案会很痛苦。有什么方法/工具可以继承这些弃用的属性吗?

所以使用这个工具后,隐藏的依赖项也将被弃用:

[[deprecated]]
void hiddenDependency();
Run Code Online (Sandbox Code Playgroud)

非常感谢您的帮助!

jer*_*ong 2

假设这是一个好主意,我的方法是暂时删除或重命名OldApi并尝试编译。您的 IDE 或现有语言工具应该能够发出有关每个编译器错误的信息,无论是引用 的定义OldApi,还是利用它的函数/类声明。将每一个标记为[[deprecated]]. 然后,也OldApi用标志恢复。[[deprecated]]