🌻天国にいけるC++言語入門🌻 進化し続けるオブジェクト指向プログラミング ver3.2307
2つ目の方法でオブジェクトp1に++演算子を作用させた++p1;を実行できるようにしオブジェクトp1のメンバ変数 p1.x,p1.yに格納されている値を1増やせるようにしてみます
2つ目の方法でオブジェクトp1に++演算子を作用させた++p1;を実行できるようにしオブジェクトp1のメンバ変数 p1.x,p1.yに格納されている値を1増やせるようにしてみます
🌞 🌞 🌞 🌞 🌞 🌞 🌞
さきほどは
普通は実行できない
クラスPoint型のオブジェクトp1に
💖単項演算子++💖
を作用させた
++p1;
を実行して
クラスPoint型のオブジェクトp1のメンバ変数
💖p1.x💖
💖p1.y💖
に格納されている値を
1増やすことができるよう
++演算子のオーバーロードを実行するのに
operator++関数の
クラスPointのメンバ関数宣言を行い
クラスPointのメンバ関数であるoperator++関数の定義
を設定する方法を用いました
こ💖ん💖ど💖は
次は
普通は実行できない
クラスPoint型のオブジェクトp1に
💖単項演算子++💖
を作用させた
++p1;
を実行して
クラスPoint型のオブジェクトp1のメンバ変数
💖p1.x💖
💖p1.y💖
に格納されている値を
1増やすことができるよう
++演算子のオーバーロードを実行するのに
クラスPointのクラス宣言内で
operator++関数のフレンド関数宣言を実行し
クラスPointのメンバ関数でない普通の自作関数operator++関数の定義
を設定する方法をためしてみ・よ・う・よ🌞
🌞 🌞 🌞 🌞 🌞 🌞 🌞
マックス「どんとこい 超常現象」
🌞 🌞 🌞 🌞 🌞 🌞 🌞
そのためには
クラスPointのクラス宣言内で
operator++関数のフレンド関数宣言
friend Point operator++(Point& p);
を実行し
そののち
クラスPointのメンバ関数でない普通の自作関数operator++関数の定義を
Point operator++(Point& p) {
p.x=p.x+1;
p.y = p.y +1;
return p;
}
と設定します
うふふふふ(´▽`*)
🌞 🌞 🌞 🌞 🌞 🌞 🌞
マックス「operator++関数のフレンド関数宣言が
friend Point operator++(Point& p);
か・・・
ううん?
operator++関数の引数部分にみなれない記述があるじゃないか?
Point& p・・・?
なんだ これは?」
てんC「マックスさん
Point& p
は
😊pのクラスPoint&型の参照変数宣言のようですね😊
」
マックス「
😊参照変数😊
か・・・
ここで登場か
どんなんだったけか わすれちゃったよぉん」
てんC「たとえば
aのint&型の参照変数宣言
int& a;
を行い
int&型の参照変数aを生成したとします
int&型の参照変数aにはint型の変数を代入することができます
たとえば
変数宣言
int b;
を実行し
int型の変数bを作製したなら
int&型の参照変数aに
a=b;
と
int型の変数bを代入することができます
すると
参照変数aはint型の変数bそのものをあらわすことになるのでしたね。
同様に
pのクラスPoint&型の参照変数宣言
Point& p;
を行い
クラスPoint&型の参照変数pを生成したとします
クラスPoint&型の参照変数pにはクラスPoint型のオブジェクト(変数)を代入することができます
たとえば
p1のクラスPoint型のオブジェクト宣言
Point p1;
を実行し
クラスPoint型のオブジェクトp1を作製したなら
クラスPoint&型の参照変数pに
p=p1;
と
クラスPoint型のオブジェクトp1を代入することができます
すると
参照変数pはクラスPoint型のオブジェクトp1そのものをあらわすことになります
ですので
クラスPoint型のオブジェクトp1のメンバ変数
p1.x
p1.y
は
参照変数pをもちいて
p.x
p.y
と表すことができます」
新規登録で充実の読書を
- マイページ
- 読書の状況から作品を自動で分類して簡単に管理できる
- 小説の未読話数がひと目でわかり前回の続きから読める
- フォローしたユーザーの活動を追える
- 通知
- 小説の更新や作者の新作の情報を受け取れる
- 閲覧履歴
- 以前読んだ小説が一覧で見つけやすい
アカウントをお持ちの方はログイン
ビューワー設定
文字サイズ
背景色
フォント
組み方向
機能をオンにすると、画面の下部をタップする度に自動的にスクロールして読み進められます。
応援すると応援コメントも書けます