オーバーライドで、どぴゅー機能を実装する ( No.42 )
日時: 2022/03/27 12:31
名前: REDCHEEKS

オーバーライドというのも、オブジェクト指向の目玉の一つなんだな。

ただ以前に説明した「オーバーロード」とは異なる。 名前が似ていてややこしいね。

オーバーライドとは、"ライド" ride = 乗る、上書き!

同じ名前で(パラメータの数や型も全く同じのもので)置き換えること(上書き、ride = 乗る)

それに対し、

オーバーロードとは、同じ名前で、パラメータの数や型が違うもの、要するに「バリエーションを増やす」って事(>>24で説明した"プレミア"付き)

違い分かるかな?

さてこれまでの経緯を説明すると、性器クラスに、しこしこ() 機能が実装されており、さらに性器クラスを継承して、陰茎クラスと膣クラスが用意されていたわけだが、これから行うのは、陰茎クラスに、独自の しこしこ() 機能を追加する必要が生じた場合への対応だ。

今回のテーマは「オーバーライドで、どぴゅー機能を実装する」って事なんだな、ぶっ飛んでるだろ

ではまた、さっそくエッチな実例を挙げて説明しよう。

http://mediasp.kir.jp/img20220326/imgloglog-box/img20211116024803.png

@ 男女共通である、性器クラスの しこしこ() 機能に、virtual を追加する。 これでオーバーライドが許可されるわけだ。

A 陰茎クラスに、男性独自の、しこしこ() 機能を、新たにオーバーライド(override)として定義する。

こうすることで、性器クラスの しこしこ() 機能は、オーバーライドした、陰茎クラスの しこしこ() 機能に置き換えられるわけだ。

ちなみに、完全に違うものに置き換えることも出来るが、継承元の(従来の)性器クラスの しこしこ() 機能も利用したい場合は、陰茎クラスの しこしこ() 機能の中で、

base.しこしこ();

と書けば、そこから性器クラスの しこしこ() 機能を呼び出すことも出来る(ハアハア)。

ただその場合注意しなければならないのは、必ず、base. を付けること、それを付けないと、自分自身を呼び出してしまうからね。

(再帰呼び出しというテクニックもあるが、不用意に自分自身を呼び出しちゃうと、スタックオーバーフローというエラーになってしまうよ)

B 課題Hを起動する。

C ハアハアに続いて「どぴゅ〜〜〜」が表示されればOK!

練習問題(オーバーライド) ( No.43 )
日時: 2021/11/20 20:17
名前: REDCHEEKS

プログラミング技術の取得は、説明を聞くだけでなくて、実際にやってみることが重要だな。

というわけで今回もまた、練習問題として、たまらんエッチドスケベな課題を出そう。

今回の説明では、性器クラスを継承した陰茎クラスに、しこしこ() 機能を追加し、性器クラスに元からあった しこしこ() 機能を置き換え男性特有の しこしこ() 機能を実現したが、膣クラスも同様に、しこしこ() 機能を追加し、女性特有の しこしこ() 機能に置き換え、ハアハアの後に、"潮吹き" を表現してみよう。