Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ チャレンジ:クラスのメソッド | イントロダクション
C++のクラスとオブジェクト
セクション 1.  5
single

single

bookチャレンジ:クラスのメソッド

メニューを表示するにはスワイプしてください

クラス内のメソッドは、基本的にクラス内で定義された関数。これらは、クラスオブジェクトが実行できる動作やアクションを定義するために使用。

メソッドはしばしばクラスの属性を操作したり、オブジェクトに関連する処理を実行。

クラス外でのメソッド実装

メソッドは、スコープ解決演算子class)を使って::宣言の外側で定義可能。これは、ヘッダファイルでの宣言とソースファイルでの実装を分離する際によく利用。以下はその方法の例。

Example.h

Example.h

Example.cpp

Example.cpp

copy
1234
class Example { public: void Method(); };

この目的のために2つの異なるファイルを作成する必要はありません。1つのファイル内で実現でき、場合によってはその方が有利です。

main.cpp

main.cpp

copy
12345678
#include <iostream> class Example { public: void Method(); }; void Example::Method() { std::cout << "Method was called" << std::endl; }

お好みの方法で課題に取り組んでください。ただし、一般的な良い習慣としては、宣言と実装を分離することです。

タスク

スワイプしてコーディングを開始

割引が適用された商品の価格を計算するシンプルなシステムを構築すると想像してください。このシステムには特別なルールも適用されます:割引率はどんなに高い値が指定されても50%を超えてはなりません。

Product クラスには以下のフィールドがあります:

  • price(型:float
  • discount(型:float

メソッド getFinalPrice() を実装してください。このメソッドは以下を行います:

  1. 割引値を確認し、50%を超えていれば50%に設定します。
  2. 最終価格を計算し、その値を返します:
    • 括弧内で、(price * discount / 100) の式を使って割引額を計算します
    • 割引額を price から差し引いて、割引後の最終価格を求めます

price = 100.0, discount = 60.0 -> 50.0
price = 80.0, discount = 30.0 -> 56.0
price = 50.0, discount = 20.0 -> 40.0

解答

Switch to desktop実践的な練習のためにデスクトップに切り替える下記のオプションのいずれかを利用して、現在の場所から続行する
すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 1.  5
single

single

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

some-alt