単純なクラスの実装コードと宣言コードを新しいヘッダーとcppファイルに分ける方法が混乱しています。たとえば、次のクラスのコードをどのように分離するのですか?基本的クラスコードをヘッダーとcppファイルに分割する
class A2DD
{
private:
int gx;
int gy;
public:
A2DD(int x,int y)
{
gx = x;
gy = y;
}
int getSum()
{
return gx + gy;
}
};
ただ、コメントのカップル:コンストラクタは、常に設定の初期化リストを代わりに使用する必要があります体の中のメンバー。良い説明と簡単な説明については、http://www.codeguru.com/forum/showthread.php?t=464084を参照してください。少なくとも公共の場を上に置くのが通例です。それは何にも影響しませんが、パブリックフィールドはクラスのドキュメントなので、それを一番上に置くのは理にかなっています。 – martiert
@martiertメンバがこのアドバイスに従ってそれらを移動したが、メンバ間の依存関係があり、メンバが宣言の順番で初期化されていることをまだ認識していなかった場合、先頭に 'public:'メンバを持つことは_lot_に影響します。 - ) –
@underscore_dこれは本当です。しかし、やはり、私たちはすべて警告としてエラーとしてコンパイルしており、私たちが考えることができるすべての警告ですよね?それは少なくとも、あなたがこれをねじっていると言うでしょうが、人々は少しの警告に方法を使用し、それらを無視します:( – martiert