ページ 11

c++のインスタンス、ヘッダーについて

Posted: 2016年3月05日(土) 19:47
by BP
c++について質問です。
1,ヘッダーファイルで関数の宣言をするときの
Myclass
{
public:
void Myclass::myfunction();
}

Myclass
{
public:
void myfunction();
}

の違い
2,インスタンスを生成するとき
Myclass m1; と MyClass m1 = Myclass;
の違い

細かくプログラムには直接影響することのない内容かもしれませんがこれら二つについて教えてくだされば幸いです。

Re: c++のインスタンス、ヘッダーについて

Posted: 2016年3月05日(土) 20:06
by みけCAT
BP さんが書きました:1,ヘッダーファイルで関数の宣言をするときの
Myclass
{
public:
void Myclass::myfunction();
}

Myclass
{
public:
void myfunction();
}

の違い
1個目はclassを前に、セミコロンを後ろに補ってもコンパイルエラーになりますが、2個目は適切なコードを補えばコンパイルが通ります。
BP さんが書きました:2,インスタンスを生成するとき
Myclass m1; と MyClass m1 = Myclass;
の違い
前者はdefault-initializeされますが、後者はMyclassを引数とするコンストラクタが呼び出されます。

Re: c++のインスタンス、ヘッダーについて

Posted: 2016年3月05日(土) 22:25
by BP
ありがとうございます。
勉強になりました。