4

C++ でクラスまたは構造体を宣言および実装する場合、通常は次のようにします。

Hファイル

namespace Space{
  class Something{
    void method();
  }
}

CPP ファイル

void Space::Something::method(){
  //do stuff
}

また

namespace Space{
  void Something::method(){
    //do stuff
  }
}

各メンバーの前に Space::を記述する必要がないように、名前空間ブロック内にすべての実装をラップできることに注意してください。クラスメンバーを同様の方法でラップする方法はありますか?

ソース ファイルとヘッダー ファイルを分けておきたいことに注意してください。これは一般的に良い習慣です。

4

4 に答える 4

3

ヘッダーと実装 (cpp) ファイルの分離を犠牲にしないわけではありません。

クラス内のヘッダーですべてをインラインで宣言できますが、大規模なクラスでは非常に面倒です。

あなたが実際に解決しようとしている問題は何ですか?それともタイピング時間だけですか?:)

于 2013-07-31T16:05:59.143 に答える
2

はい:

.hファイル:

namespace Space{
  class Something{
    void method()
    {
      // do stuff
    }
  };
}

ただし、お勧めしません。

于 2013-07-31T16:04:48.763 に答える