- ベストアンサー
VC++の勉強で理解できない箇所について
- VC++の勉強をしている中で、理解できない箇所があります。特に、Daimao buとHero youという部分についての理解ができません。
- これらの部分では、変数型を作っているのだと思いますが、具体的にはどのような値が入るのかが分かりません。また、Hero youの部分でどのクラスとの継承関係があるのかも理解できません。
- 質問者としては、これらの部分の解釈や使い方について詳しく教えていただきたいです。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
質問者さんはクラスとインスタンスの区別がついていないか初歩的な勘違いをしているJava経験者のように思われます。 DaimaoとHeroはクラスです。 これらのクラスはTaiketu_basyoクラスより前に宣言されています。 youはHeroクラスのインスタンスです。 Javaではインスタンスは必ずヒープにつくられるのでnewしなければ作成されませんがC++ではスタックに作成する事が出来るのでyouがポインタでない場合には宣言時にインスタンスが作成されます。
その他の回答 (5)
- tukai
- ベストアンサー率14% (2/14)
Hero you; Daimao bu; これはHeroというクラスのオブジェクトyouとDaimaoというクラスのオブジェクトbuを宣言しています そして you.kougeki_suru(kougeki); はyouからkougeki_suruと言う関数(C++ではメソッドと呼ばなかったような..)を呼びだしています #1さんは色々とこんがらがっているみたいですね まずオブジェクト指向を理解するためにjavaをやってみてはいかがでしょうか
- noconan
- ベストアンサー率0% (0/1)
はじめまして。 >daimao形と言われても、中に数字とか文字とか何が入るのでしょうか? まず Daimao bu; と定義された時点でDaimaoクラスのコンストラクタが呼ばれ、そのクラスのメンバ変数powerに100が設定されます。どうように Hero you; でもコンストラクタが呼ばれそのクラスのメンバ変数powerに100が設定されます。 Daimao bu; と Hero you; の定義ではこの2つのみが行われます。 >いきなりyou.でヒーローのクラスと継承できてる形になってますが これは継承ではありません。Heroクラスのオブジェクトであるyouを利用し、Heroクラスのメンバ関数kougeki_suru(int n)を使用するということであり、このkougeki_suru関数の引数にkougekiを渡しているためyou.kougeki_suru(kougeki); と記述してあります。
- koko_u_
- ベストアンサー率18% (459/2509)
>どうせ回答するなら、内容の濃いものお願いします。 残念ながらそれ以外に回答のしようがないべ。 >daimao形と言われても、中に数字とか文字とか何が入るのでしょうか? サイトには Daimao 型の内容も書かれていますね。 >いきなりyou.でヒーローのクラスと継承できてる形になってますが、 継承ではありません。サイトに継承の説明も載っていますね。 など諸々判断するに、C++ の文法が解説してある書籍が必要なように見受けられます。
- koko_u_
- ベストアンサー率18% (459/2509)
ただのメソッド呼び出しです。 質問で挙げてるサイトを最初から読んでます?恐らく理解できていないのは 1箇所ではありません。
補足
最初から読んでます。 どうせ回答するなら、内容の濃いものお願いします。
Daimao と Hero を定義している場所を探したら? 別のファイル(????.h)かもしれないよ
お礼
回答ありがとうございます! すみません。ホント基本的なとこ勘違いしてました。 おかげで解決できました。 とても参考になりました。ありがとうございました。