編集:「加算」クラスをに追加しましたが、誤って忘れてしまいました。クラスを異なるファイルに分割するにはどうすればよいですか?クラスがどのように機能するか、オブジェクトなどを作成する方法を理解しています。ただし、クラスを別のファイルに配置するプロセスで混乱が生じています。助けてくれてありがとう!また、IDEとしてCodeBlocksを使用しています。これまでの私の理解は次のとおりです。
- 新しいクラスを作成すると、CBは「.h」と新しい「.cpp」を提供します。
- ソースファイルの先頭にある「Classname::Classname」はスコープ解決演算子です。
- メインソースファイルで「#includeclassname.h」を使用して、その内容をインポートします。
- 宣言したオブジェクトを使用して、「main」から関数を呼び出すことができます。
これはこれまでの私の理解ですが、それを実装する方法について混乱しています。すべてのクラスを1つのソースファイルにまとめた簡単な計算機を作成しました。それはうまく機能し、私はそれをかなり誇りに思っていると思います:)私はこのようなものを作るもっと簡単な方法があることを知っていますが、私は練習の唯一の目的のために代わりにクラスとオブジェクトを使用しました。これが電卓の私のコードです。また、長い投稿を本当にお詫びします:/これまで読んでくださった方、特に私を少し助けてくださった方に感謝します!
これが1つのソースファイルの私のコードです:
#include <iostream>
using namespace std;
class Addition {
public:
float add (float x, float y) {
float sum;
sum=x+y;
return sum;
}
};
class Subtraction {
public:
float subtract (float x, float y) {
float dif;
dif=x-y;
return dif;
}
};
class Multiplication {
public:
float multiply (float x, float y) {
float prod;
prod=x*y;
return prod;
}
};
class Division {
public:
float divide (float x, float y) {
float quot;
quot=x/y;
return quot;
}
};
int op;
char cont;
int main()
{
do {
cout<<"Welcome to C++ Calculator v2!"<<endl;
cout<<"Select the number for which operation you want to use: "<<endl;
cout<<"1-Addition"<<endl;
cout<<"2-Subtraction"<<endl;
cout<<"3-Mutliplication"<<endl;
cout<<"4-Division"<<endl;
cin>>op;
if (op==1) {
float num1;
float num2;
Addition addobj;
cout<<"You have chosen Addition!"<<endl;
cout<<"Enter the first number you want to add: "<<endl;
cin>>num1;
cout<<"Enter the second number you wat to add: "<<endl;
cin>>num2;
float ans=addobj.add(num1, num2);
cout<<"The sum is "<<ans<<endl;
cout<<"Do you wish to continue? Y/N"<<endl;
cin>>cont;
}
if (op==2) {
float num1;
float num2;
Subtraction subobj;
cout<<"You have chosen Subtraction!"<<endl;
cout<<"Enter the first number you want to subtract: "<<endl;
cin>>num1;
cout<<"Enter the second number you want to subtract: "<<endl;
cin>>num2;
float ans=subobj.subtract(num1, num2);
cout<<"The difference is "<<ans<<endl;
cout<<"Do you wish to continue? Y/N"<<endl;
cin>>cont;
}
if (op==3) {
float num1;
float num2;
Multiplication multobj;
cout<<"You have chosen Multiplication!"<<endl;
cout<<"Enter the first number you want to multiply: "<<endl;
cin>>num1;
cout<<"Enter the second number you want to multiply: "<<endl;
cin>>num2;
float ans=multobj.multiply(num1, num2);
cout<<"The product is "<<ans<<endl;
cout<<"Do you wish to continue? Y/N"<<endl;
cin>>cont;
}
if (op==4) {
float num1;
float num2;
Division divobj;
cout<<"You have chosen Division!"<<endl;
cout<<"Enter the first number you want to divide: "<<endl;
cin>>num1;
cout<<"Enter the second number you want to divide: "<<endl;
cin>>num2;
float ans=divobj.divide(num1, num2);
cout<<"The quotient is "<<ans<<endl;
cout<<"Do you wish to continue? Y/N"<<endl;
cin>>cont;
}
} while (cont=='Y'||cont=='y');
if (cont=='N'||'n') {
cout<<"Thanks for using my program, goodbye!"<<endl;
}
return 0;
}