C ++:等效于为类定义使用命名空间?

时间:2012-06-13 20:03:07

标签: c++ class namespaces scope

所以,我希望让我的代码更清晰。这就是我所拥有的:

obj.hpp

class obj {
    obj();

    int return0();
};

obj.cpp

using namespace obj; //illegal!!
obj() { }

int return0()
{
    return 0;
}

基本上,我认为写obj::return0()...有点多余。当我有子类时,这会变得更加棘手,我会做obj::child::child2::return0()...

之类的事情

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

using namespace x可让你call在x中运行,而不是define

正如评论指出的那样,如果它很短,你可以在头文件中内联函数。

obj.hpp

class obj {
    obj(){}
    int return0(){return 0;}
}