【发布时间】:2021-05-10 00:21:12
【问题描述】:
我有一个类 A,它位于 C++ 中的命名空间 N 内,因此我可以在代码中使用 N::A 引用它。
我需要在 Eclipse CDT 中将该类从命名空间 N 中取出。
当然,我还需要在代码库中编辑所有使用N::A 表示法引用此类的事件,以便删除引用命名空间N 的部分。
我想知道在 Eclipse 中是否有一种方法可以自动执行此操作,这样我就不必在代码中的任何地方手动执行此操作。
【问题讨论】:
-
我不知道(但怀疑)这是否是 Eclipse CDT 的自动化重构任务。通常的方法(这符合 IMO 的有效用例)是为命名空间前缀定义一个宏,并在预处理阶段有条件地替换它。必须始终如一地完成,当然需要完全重新编译所有受影响的代码。
-
我会尝试通过文本编辑器的替换所有功能将所有出现的“N::A”替换为“A”
标签: c++ eclipse namespaces ide eclipse-cdt