はじめに
この一週間ブロック崩しを作ってみて、オブジェクト指向の難しさに気づいた。
ブロック崩し 【OF】
現在の進行状況
ファイル一覧
# main関数みたいなもの
Game.h
Game.cpp
# オブジェクトクラス ( Circle, Box, Bar ) の親クラス
# 継承を使いたかったので無理やり導入
Object.h
# Objectクラスの子クラス
# ブロック崩しの "バー" の部分を定義している
Bar.h
Bar.cpp
# Objectクラスの子クラス
# ブロック崩しの "ブロック" の部分を定義している
Box.h
Box.cpp
# Objectクラスの子クラス
# ブロック崩しの "ボール" の部分を定義している
Circle.h
Circle.cpp
# インスタンスを作るためのクラス
# 実装途中...。
CreateFactory.h
CreateFactory.cpp
# ゲーム作りは、 'pos.x' とかを使うと便利ときいたので、
# operator関数の練習も兼ねて実装した
# かなり勉強になった
# Objectクラスで使っている。
Vector2D.h
Vector2D.cpp
# 当たり判定のクラス
# 実装途中...。
Collision.h
Collision.cpp
オブジェクト指向
実際にブロック崩しを作っていると、もやもやした気持ちになった。それは、他のインスタンスの情報は、引数で受け取る方法をしていると、引数が10個くらいになってしまうと気がついた。
例
Bar bar;//インスタンス生成
Circle circle;
void execute(double bar.pos.x,double bar.pos.y, double circle.pos.x, ........ );
このように必要な情報を引数に入れて情報を渡していると、大規模プロジェクトならいつか限界が来ると感じた。そこで、「インスタンスのアドレスを関数で渡したら多少ましになるのでは?」と考えたが、インスタンスの数が多すぎるとこの方法も使えない。ネットで検索していると、オブジェクト指向を取り入れる必要があるという結果がでてきた。オブジェクト指向ってかなり難しいことを身をもって体感した。
今後
