質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Visual C++

Microsoft Visual C++はWindowsのCとC++の統合開発環境(IDE)であり、コンパイラやデバッガを含んでいます。

Q&A

解決済

2回答

764閲覧

Visual Studio 2017 community にてクラスの使い方について

lleldigm

総合スコア59

Visual C++

Microsoft Visual C++はWindowsのCとC++の統合開発環境(IDE)であり、コンパイラやデバッガを含んでいます。

0グッド

0クリップ

投稿2019/01/02 17:50

編集2019/01/02 18:41

オリジナルのHumanクラスインスタンスの中身を編集して、関数に渡したいのですが、うまくいきません。ご教授お願いします。
以下の手順で行いたい
1.Humanクラスの宣言
2.main()関数でインスタンス作成及び中身の編集
3.printAge()関数でコンソールに表示する。

Visual

1 2//※プロトタイプやincludeは省略する 3 4 5class Human : public Creature { 6 public : int age; 7}; 8 9 10main(){ 11 Human* hAddr = new Human(); 12 Human h = &hAddr ; //★ココでerror(変換するためのコンストラクタが存在しません) 13 14 h.age = 30; 15 printAge(hAddr); 16} 17 18 19printAge(Human* hAddr){ 20 printf("この人は%d歳です。" , hAddr.age); 21 22 23} 24 25 26

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

Human h = *hAddr ;

では

投稿2019/01/02 22:49

y_waiwai

総合スコア87719

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

lleldigm

2019/01/02 23:38

ありがとうございます!その方法で解決できましたー!
guest

0

こんにちは。

HumanクラスとPartyクラスの関係がわからないのでなんとも言えませんが、以下のように変更したら通るかもしれません。(PartyがHumanの派生クラスなら通るでしょう。)

Patry& h = reinterpret_cast<Party&>(*paAdd);

投稿2019/01/02 18:19

Chironian

総合スコア23272

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

lleldigm

2019/01/02 18:42

ソースコードが間違っていたため、修正しました!Patryクラスは関係ないです><ごめんなさい
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問