longUnderstandableName

longUnderstandableName

这个问题在这里已经有了答案:





Is it possible to avoid repeating the class name in the implementation file?

(8 个回答)


4年前关闭。




如果在 C++ 中我有一个类 longUnderstandableName 。对于那个类,我有一个包含其方法声明的头文件。在类的源文件中,我必须到处写 longUnderstandableName::MethodAlongUnderstandableName::MethodB 等等。

我可以以某种方式使用命名空间或其他东西,所以我可以在类源文件中写入 MethodAMethodB ,并且只在那里?

最佳答案

typedef longUnderstandableName sn;

然后您可以将方法定义为
void sn::MethodA() {}
void sn::MethodB() {}

并将它们用作
sn::MethodA();
sn::MethodB();

这仅在 longUnderstandableName 是类名时才有效。即使该类深深嵌入到其他一些命名空间中,它也能工作。

如果 longUnderstandableName 是命名空间的名称,那么在你想使用方法的命名空间(或源文件)中,你可以写
using namespace longUnderstandableName;

然后调用方法,如
MethodA();
MethodB();

你应该小心不要在头文件中使用 using namespace foo;,因为这样它会污染我们将头文件 .cpp 放入的每个 #include 文件,但是绝对允许使用 0x25181224123 的 0x25181224123 的顶部文件 0x251812241314134134

关于C++: "Class namespaces"?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4065563/

10-13 07:01