驱动 day9 作业
发布人:shili8
发布时间:2024-11-09 02:47
阅读次数:0
**Day9: 驱动 Day9**
在前面的几天里,我们已经学习了如何使用 C++ 构建一个简单的计算器程序。今天,我们将继续深入探索这个主题,学习如何使用类和对象来构建更复杂的计算器程序。
### 类和对象在 C++ 中,类是用来描述一组数据和函数的模板,而对象则是根据该类创建出来的实体。我们可以通过定义一个类来描述一个计算器的行为,然后使用这个类来创建多个计算器对象。
#### 计算器类
cpp// calculator.h#ifndef CALCULATOR_H#define CALCULATOR_Hclass Calculator {
public:
// 构造函数 Calculator();
// 运算函数 double add(double num1, double num2);
double subtract(double num1, double num2);
double multiply(double num1, double num2);
double divide(double num1, double num2);
private:
// 私有成员变量 double result;
};
#endif // CALCULATOR_Hcpp// calculator.cpp#include "calculator.h"
Calculator::Calculator() : result(0.0) {}
double Calculator::add(double num1, double num2) {
return num1 + num2;
}
double Calculator::subtract(double num1, double num2) {
return num1 - num2;
}
double Calculator::multiply(double num1, double num2) {
return num1 * num2;
}
double Calculator::divide(double num1, double num2) {
if (num2 !=0.0) {
return num1 / num2;
} else {
throw std::runtime_error("Cannot divide by zero!");
}
}
#### 使用计算器类
cpp// main.cpp#include "calculator.h"
int main() {
Calculator calc;
double result = calc.add(10.0,5.0);
std::cout << "Result: " << result << std::endl;
result = calc.subtract(15.0,3.0);
std::cout << "Result: " << result << std::endl;
result = calc.multiply(4.0,6.0);
std::cout << "Result: " << result << std::endl;
try {
result = calc.divide(10.0,0.0);
std::cout << "Result: " << result << std::endl;
} catch (const std::exception& e) {
std::cerr << "Error: " << e.what() << std::endl;
}
return0;
}
### 总结在本日的学习中,我们学习了如何使用类和对象来构建一个计算器程序。我们定义了一个 `Calculator` 类,包含了四个运算函数,并使用这个类创建了多个计算器对象。通过这种方式,我们可以更好地组织代码并实现复杂的功能。
### 练习1. 添加一个 `pow` 函数来计算幂。
2. 实现一个 `sqrt` 函数来计算平方根。
3. 使用 `Calculator` 类创建一个简单的表达式求值器。
### 参考资料* C++ Primer Plus (6th Edition) by Lippman, Rob* The C++ Programming Language (4th Edition) by Stroustrup, Bjarne

