【c++入門】classで遊んでみる。(class,void,const)
さて、すごいなこのテキスト。Hello Worldからいきなりクラスなんだ。
この方が助かるけど。
実行結果:
にゃー。俺様はだ。
にゃー。俺様はタマだ。
まずは、関数から。
void setname(string n){
処理・・・
}
という形だった。
void・・・結果を外部に報告しない。
関数(string n)・・・外部からstring型(文字列)を受け取り、nとする
次にオブジェクト(実態、インスタンス)について
main関数の中で実態xを作っている。
オブジェクトはプログラマ(自分)の変わりに仕事をしてくれる。
x.setname・・・xのsetnameを実行せよ、と読む。
x.setname("タマ")・・・クラスのstring nの中にタマが格納される。
って感じ。
続いて、コンストラクタの話。
コンストラクタはオブジェクト*1を作成した時に、自動的に変数に値をセットする特別な関数。戻り値を返さない。実引数を与えない呼び出しでも、入れ物だけを作るデフォルトコンストラクタも作ることができる。
ってことでソースがこんな感じ。
とてもわかりやすい。
ちなみに、プログラマがコンストラクタを書かない場合は、KNeko(){}があるのと同じと解釈され、実行される。(オブジェクト化の時に実引数を渡さなければ、名無しのオブジェクトができる)
*1:メモリ上の存在。データを持っていて、何かをしてくれるものというイメージ