如何使用 Eclipse CDT 自动从名称空间中取出 class?

How can I take a class out of a namespace automatically with Eclipse CDT?

我有一个 class A 在 C++ 的命名空间 N 中,所以我可以在代码中用 N::A.

引用它

我需要在 Eclipse CDT 中将 class 从命名空间 N 中取出。
当然,我还需要在代码库中使用 N::A 符号编辑所有引用此类 class 的事件,以便删除引用命名空间 N 的部分。

我想知道在 Eclipse 中是否有自动执行此操作的方法,这样我就不必在代码中的任何地方手动执行此操作。

一种可行的方法是使用 using N::A 将 class A 加载到全局命名空间。然后您可以使用 Eclipse CDT 的 find and replace 功能将所有出现的 N::A 编辑为 A.

您可以将 using N::A 仅放置在您希望 class 位于全局命名空间中的文件中,或者您可以将其定义在 class 的末尾' s 头文件,以便在每个包含 class 的文件中自动定义它。以这种方式使用它意味着只有 A class 被转储到全局命名空间,而使用 using namespace N; 将该命名空间的每个内容都转储到全局命名空间。