トップページgamedev
840コメント373KB

今日から必死で1から全て学んでゲーム作成します

■ このスレッドは過去ログ倉庫に格納されています
0001松田 ◆cobo4pcvHY 03/02/06 21:28ID:+Sp/g0d7
全然言語の知識とかないけれど、

言語の難しさから逃げていては駄目だ!お前はゲームを作りたいのだろ!?
という悟りを開き、今日からプログラム言語を覚え、そして
プログラムツールで作ります!今持ってるものは・・・。

6才年下の弟の持ってる技術(厨2)の教科書。
アクティブベーシック。(vectorより入手)

・・・作れるのだろうか!?もちろん古本屋で買いあさってくるが
(作れ次第、いずれうpします・・・。いつまでかか(ry))
0838名前は開発中のものです。03/08/20 13:55ID:wW23h0o7

void keisan::hiku()
{
ans = a - b;
cout<<"a - b = "<<ans<<endl;
}

int main(void)
{
keisan cla;

cla.input();
cla.tasu();
cla.hiku();

getch();
return 0;
}

こんな感じにクラスって奴を使うんですか?
あと、オブジェクト指向になってますか?
0839名前は開発中のものです。03/08/21 00:49ID:2IFCdjlO
クラスとして間違ってはいないが、良い使い方ではない。
とりあえず、クラスの設計で気がついた点を並べてみる。

・コンストラクタが無い
 このせいで、メンバ変数a,b,ansの初期値が不定になる。
 例えば、Keisan::input()を行わずにkeisan::tasu()やkeisan::hiku()を実行
 すると、謎の数字が表示されてしまう。

・デストラクタが無い
 現状では無くても構わない。が、個人的には常に書くほうが良いと思う。

・cin、coutはクラスの外に出したほうが良い
 一概にはいえないが、「計算」と「出力」のような異なる処理は分離したほ
 うが柔軟なクラスになる。

・メンバ変数ansは必要ない
 cout << "a + b = " << ( a + b) << endl;
 cout << "a - b = " << ( a - b) << endl;
 で十分だろうと。でもこれは、上の三つほどは重要じゃないな。
0840名前は開発中のものです。03/08/21 01:38ID:2IFCdjlO
>>832
char s[ 256];
scanf("%s", s);
のように文字列で受け取って、strtol()関数などで数値に変換。
ところで、「特定のキーのみを受け付ける」のは、C/C++の標準関数では
無理なので、プラットフォーム固有の機能を使わなければならない。
windowsな人は、DirectXにたよっちゃうのが楽だと思う。
■ このスレッドは過去ログ倉庫に格納されています