🌻天国にいけるC++言語入門🌻 進化し続けるオブジェクト指向プログラミング ver3.2307
クラス名の設定方法を考えてみましょう😊クラス名は取り扱うモノ(プロトタイプオブジェクト)の所属するカテゴリー名により決定されます
プロトタイプオブジェクトの持っているデータをオブジェクトを用いてより効率的にアクセスしデータを使用していこうという考え方をオブジェクト指向といいます
クラス名の設定方法を考えてみましょう😊クラス名は取り扱うモノ(プロトタイプオブジェクト)の所属するカテゴリー名により決定されます
ソーラー「クラスCubeが用いられたプログラムを今一度
ご覧ください
👇
#include <iostream>
using namespace std;
class Cube {
public: // (アクセス指定子)
int no; //変数noはクラスCubeのメンバ変数とよばれます
float tate; //変数tateはクラスCubeのメンバ変数とよばれます
float yoko; //変数yokoはクラスCubeのメンバ変数とよばれます
float takasa; //変数takasaはクラスCubeのメンバ変数とよばれます
void display(); //自作関数display()はクラスCubeのメンバ関数とよばれます
};
void Cube::display() {
cout << "立方体につけられたナンバーは" << no << "です" << "\n";
cout << "立方体の縦の長さは" << tate << "です" << "\n";
cout << "立方体の横の長さは" << yoko << "です" << "\n";
cout << "立方体の高さの長さは" << takasa << "です" << "\n";
}
//👆クラスCubeのメンバ関数となっている自作関数display()の定義をおこなっています
int main() {
Cube cube1;
//👆cube1のクラスCube型のオブジェクト宣言をおこなっています
cube1.no = 1;
cube1.tate = 2.0;
cube1.yoko = 3.0;
cube1.takasa = 4.0;
cube1.display();
return 0;
}
ビルド実行結果
立方体につけられたナンバーは1です
立方体の縦の長さは2です
立方体の横の長さは3です
立方体の高さの長さは4です
ソーラー「
では
このプログラムで
クラスCubeの名前が
なぜ
Cubeとなっているのか
について考察してみようよ」
マックス「なんで
クラスCubeの名前が
なぜ
Cubeとなっているのか、か?
適当じゃないのか?」
ソーラー「適当じゃありません
さあ、なぜ
クラスCubeの名前が
Cubeとなっているのでしょうか?
"クラスとは"
"あるモノのデータを格納する変数"
と
"そのデータを格納している変数に作用する関数(プラスそのクラスに含めておいた方が便利だろう関数)"
を
"1つにまとめるためにあります"
ヒントは
このクラスCubeが
を取り扱っているということです
いかがでしょうか?
"クラスは"
"あるモノのデータを格納する変数"
と
"そのデータを格納している変数に作用する関数(プラスそのクラスに含めておいた方が便利だろう関数)"
を
"1つにまとめるために用いられます"
あるモノのデータが立方体のデータ
なら
クラス名をCubeにすればよいというわけです
Cubeという名前のクラスには
立方体のデータを格納するための変数と
その立方体のデータを格納するための変数に
作用するための関数がまとめられているというわけです
もし取り扱うモノのデータが
ゲームのキャラクターのデータなら
つまり
ゲームのキャラクターというカテゴリーに含まれるデータなら
クラス名を
GameCharacterに
もし取り扱うモノのデータが
クルマのデータなら
つまり
クルマというカテゴリーに含まれるデータなら
クラス名を
Carに
すればよいというわけです
このときクラス名の最初の1文字は大文字にします
ようは
クラスが取り扱うモノの所属するカテゴリー名をクラス名にすればよいというわけです
クラスのメンバ変数
クラスのメンバ関数
自体は
は
クラス名を決定するのに関係してきません
なぜなら
クラスのメンバ変数は
データを取り扱うことはできますが
何のデータを取り扱うかを決めることはできず
クラスのメンバ関数は
クラスのメンバ変数が
取り扱うデータに作用し
どのように作用するかを自由に決めることができますが
何のデータを取り扱うかを決定することはできないからです」
🌞🌞おまけ++(プラスプラス)のコーナーです🌞🌞
クラス名の名前の付け方を
プロトタイプオブジェクト
すなわち
自分が対象としてみるもの
を中心に据えて考えてみましょう
プロトタイプオブジェクト
すなわち
自分が対象としてみるもの
は
何かのカテゴリーに属しています
例えば・・・
プロトタイプオブジェクト
すなわち
自分が対象としてみるもの
を
目の前のcube1と名づけられた物体
とします
その物体はたまたま立方体だったとします
目の前のcube1と名づけられた物体は
立方体というカテゴリーに属しているのですね
そのとき
目の前のcube1と名づけられた物体のデータを取り扱うためのクラスの
クラス名を
Cube(立方体)とします
つまり
プロトタイプオブジェクトが属しているカテゴリー名を
クラス名にするのです
プロトタイプオブジェクト
すなわち
自分が対象としてみるもの
が
リリアーネという名前のゲームのキャラクターなら
リリアーネはゲームのキャラクターというカテゴリーに属しています
そこで
リリアーネという名前のゲームキャラクターのデータを取り扱うためのクラスの
クラス名を
GameCharacterにします
プロトタイプオブジェクト
すなわち
自分が対象としてみるもの
が
car1という名前のクルマなら
car1はクルマというカテゴリーに属しています
そこで
car1という名前のクルマ(Car)のデータを取り扱うためのクラスの
クラス名を
Carにします
このときクラス名の最初の1文字は大文字にします
新規登録で充実の読書を
- マイページ
- 読書の状況から作品を自動で分類して簡単に管理できる
- 小説の未読話数がひと目でわかり前回の続きから読める
- フォローしたユーザーの活動を追える
- 通知
- 小説の更新や作者の新作の情報を受け取れる
- 閲覧履歴
- 以前読んだ小説が一覧で見つけやすい
アカウントをお持ちの方はログイン
ビューワー設定
文字サイズ
背景色
フォント
組み方向
機能をオンにすると、画面の下部をタップする度に自動的にスクロールして読み進められます。
応援すると応援コメントも書けます