[C++入門]コンストラクタのオーバーロードを使うサンプル
書式
class クラス名
コンストラクタ(引数1)
コンストラクタ(引数,引数2…)
使用例
#include <string>
#include <iostream>
using namespace std;
//クラスの定義
class Sample
{
//メンバ変数名
private:
string addr;
public:
//コンストラクタ
Sample();
//コンストラクタのオーバーロード
Sample(string addr);
void show(); //メンバ関数
};
//コンストラクタ関数の定義 引数なし
Sample::Sample()
{
cout << "コンストラクタ AAA\n";
}
//コンストラクタ関数の定義 引数あり
Sample::Sample(string addr)
{
cout << "コンストラクタのオーバーロード BBB\n";
this->addr = addr;
}
void Sample::show()
{
cout << addr << " 「addr」メンバー変数の値を表示する\n";
return;
}
//mainクラス
int main() {
Sample spA;
Sample spB("test address");
spB.show();
return 0;
}
#include <string>
#include <iostream>
using namespace std;
//クラスの定義
class Sample
{
//メンバ変数名
private:
string addr;
public:
//コンストラクタ
Sample();
//コンストラクタのオーバーロード
Sample(string addr);
void show(); //メンバ関数
};
//コンストラクタ関数の定義 引数なし
Sample::Sample()
{
cout << "コンストラクタ AAA\n";
}
//コンストラクタ関数の定義 引数あり
Sample::Sample(string addr)
{
cout << "コンストラクタのオーバーロード BBB\n";
this->addr = addr;
}
void Sample::show()
{
cout << addr << " 「addr」メンバー変数の値を表示する\n";
return;
}
//mainクラス
int main() {
Sample spA;
Sample spB("test address");
spB.show();
return 0;
}
#include <string> #include <iostream> using namespace std; //クラスの定義 class Sample { //メンバ変数名 private: string addr; public: //コンストラクタ Sample(); //コンストラクタのオーバーロード Sample(string addr); void show(); //メンバ関数 }; //コンストラクタ関数の定義 引数なし Sample::Sample() { cout << "コンストラクタ AAA\n"; } //コンストラクタ関数の定義 引数あり Sample::Sample(string addr) { cout << "コンストラクタのオーバーロード BBB\n"; this->addr = addr; } void Sample::show() { cout << addr << " 「addr」メンバー変数の値を表示する\n"; return; } //mainクラス int main() { Sample spA; Sample spB("test address"); spB.show(); return 0; }
実行結果
コンストラクタ AAA
コンストラクタのオーバーロード BBB
test address 「addr」メンバー変数の値を表示する