引数つきのコンストラクタを持つクラス定義
スポンサーリンク
スポンサーリンク
ライフスタイル関連のコンテンツ
お金 | 仕事 | 勉強 | プライベート | 健康 | 心
プログラミング関連のコンテンツ
C言語/C++入門 | Ruby入門 | Python入門 | プログラミング全般
お金 | 仕事 | 勉強 | プライベート | 健康 | 心
プログラミング関連のコンテンツ
C言語/C++入門 | Ruby入門 | Python入門 | プログラミング全般
コンストラクタには引数を渡すことができます。
スポンサーリンク
#include <string>
#include <iostream>
// profileクラス
class profile {
public:
std::string name; // 名前
std::string address; // 住所
int phone; // 電話番号
public:
// コンストラクタ
profile(const std::string p_name, const std::string p_address, const int p_phone);
// 出力
void pf_display();
};
// コンストラクタ実装
inline profile::profile(const std::string p_name, const std::string p_address, const int p_phone) {
name = p_name;
address = p_address;
phone = p_phone;
}
// 出力pf_display実装
inline void profile::pf_display() {
std::cout << name << "\n";
std::cout << address << "\n";
std::cout << phone << "\n";
}
// クラスをテストするルーチン
int main() {
profile p_takako("takako", "hogehoge", 1234567);
p_takako.pf_display();
}
実行結果。
takako hogehoge 1234567
インスタンス生成時の、コンストラクタによる初期化が、引数を渡された形で行われます。
コンストラクタが引数を取る場合に、引数が足りないと、コンパイルエラーとなります。
スポンサーリンク
>> 次の記事 : コピーコンストラクタ
<< 前の記事 : コンストラクタで自動的に初期化する
- - 関連記事 -
- 派生クラスのコンストラクタ・デストラクタ
- 派生クラスによる関数の隠蔽
- 仮想クラス
- 抽象クラス
- 仮想関数・virtualキーワード
- 親クラスの引数ありコンストラクタを子クラスから初期化・動的サイズのスタック
- クラスのアクセス制限キーワード・private, protected, public
- スタックを実装したクラスを拡張する
- クラス継承・親クラスと子クラス
- static・静的メンバ関数
- static・静的メンバ変数
- 定数のconstメンバ関数をクラスに宣言
- 定数のconstメンバ変数をクラスに宣言
- フレンドクラス・friend
- フレンド関数・friend
- クラスの中にメンバ関数(メソッド)を実装する
- explicit・コンストラクタを明示する
- クラスで自動的に生成されるメンバ関数
- コピーコンストラクタ
- コンストラクタで自動的に初期化する
スポンサーリンク