スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

ゲーム作成への道1 まずは基礎から!!(その5)

さて、前回は継承についてお勉強しました。
今回はオーバーロード、オーバーライド、コンストラクタについて少々

また意味不明な言葉が出てきたよヽ(`Д´)ノ

(´・ω・`)今回はちょっとややこしいかもしれないね

Σ(゚Д゚;エーッ!

では続きをどうぞ

今までクラスと継承について勉強しました。
今回紹介するオーバーロード、オーバーライド、コンストラクタはクラスと継承をさらに効率よく使っていくための機能です。

では、まずオーバーロードから説明していきます。
前回クラス内には複数の関数が存在すると説明しました。それぞれ関数の名前はユニークなのですが、このオーバーロードという機能は関数の名前は同じでも中身が違えば同じ関数の名前をつけてもよいという機能です。
多分ピンと来ない人が多いでしょう。またここでたとえ話を一つ。(またガンダムで)
例えば最近のガンダムでいうとストライクガンダムをクラス内の関数としましょう。
ストライクガンダムにはランチャーストライク、ソードストライク、エールストライクと換装できます。
この換装がオーバーロードです。
つまり、ストライクガンダムにも戦況によっては色々装備を換装します。
オーバーロードとは引数の数(戦況)によって処理方法(換装)をするということです。

次にオーバーライドです。
(´-`).。oO(名前的にオーバーロードとこんがらがるんだよね)
これは継承したクラス、つまり派生クラスをパワーアップさせようという機能です。
具体的には基底クラスで作成した関数を派生クラスでもう一度再編集しようという機能です。
ただし、条件があります。
オーバーライドするためには基底クラスのオーバーライドする対象の関数と「名前」、「戻り値」、「引数」も同一の関数を派生クラスに記述することです。
わからなかった人のためにたとえ話を一つ

ていうかお前の説明がわからねーよ!!ヽ(`Д´)ノ
(´・ω・`)ごめんなさい

少々強引なたとえ話ですがご了承を・・・
ガンダムマーク?(基底クラス)のビームライフル(関数)ヴァージョンを継承するとZガンダム(派生クラス)になりました。継承したZガンダムはガンダムマーク?より引き継いだビームライフルが使えます。ですがビームライフルのエネルギーがすぐ切れてしまって使い物になりません。ではビームライフルのエネルギーを増やすため改造(オーバーロード)しました。
これがオーバーライドです。

ラストにコンストラクタです。
これは簡単に説明します。
クラスをインスタンスする時、勝手に実行される部分があります。それがコンストラクタといいます。
つまりここでクラスの初期化が可能というわけですね。

初期化しないとなんか不具合でもあるのかよ!!ヽ(`Д´)ノ

(´・ω・`)あるッちゃあるし、ないっちゃないんだよねぇ

例えば変数を宣言しても初期値を設定していなかったらその変数の中身はぐちゃぐちゃです。
ですがコンストラクタを使用すればあらかじめ変数に初期値を代入することが可能なのです。
まぁまだほかにもあるんですがとりあえずこんなもんで。

さて、これでC++の基礎(?)知識は学べたはずです。
次はまとめとして作ったソフトのご紹介でも。

スポンサーサイト

コメント

コメントの投稿



管理者にだけ表示を許可する


トラックバック

http://misuman04.blog63.fc2.com/tb.php/8-11326db8

 | ホーム | 


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。