2

.hpp名前空間で囲まれた行にクラス宣言があります。

namespace mylib
{
    class MyClass
    {
        public:

        MyClass();
    }
}

.cppクラスの機能をファイルに実装する予定です。

ただし、これらの方法は両方とも機能するようです。

mylib::MyClass::MyClass()
{
}

namespace mylib
{
    MyClass::MyClass()
    {
    }
}

そのため、これらの方法の違いは何であり、どちらを優先する必要があるのか​​疑問に思っています。

4

2 に答える 2

6

それは個人的な好みです。namespaceただし、括弧付きのキーワードを使用してコードを保存できます。また、これらは読みやすいかもしれません(とにかくすべてが同じ名前空間にあることを知っています)。

またnamespace、クラス内で定義されたカスタム型を使用し始めると、使用しないとかなり面倒で混乱する可能性があることに注意してください。たとえば、別のローカル クラスを戻り値またはパラメーターの型として使用します。

myNamespace::myClass::myType &myNamespace::myClass::doSomething(const myNamespace::myOtherClass &theOther) {
    // ...
}

namespace myNamespace {
    myClass::myType &myClass::doSomethingDifferent(const myOtherClass &theOther) {
        // ...
    }
}
于 2013-01-04T01:01:23.643 に答える
0

mylib::7文字を含む

namespace mylib { }16 文字 (スペースを除く) を含む

したがって、2 番目の形式を使用すると、3 つ以上のメソッドを定義する限り、入力時間を節約できます。

于 2013-01-04T01:02:49.217 に答える