介绍
在本实验中,你将学习如何在 C++ 编程语言中演示单级继承(Single Level Inheritance)的概念。你将创建两个类,一个父类和一个子类,其中子类(派生类)将继承父类(基类或超类)的特性(属性和方法)。
在本实验中,你将学习如何在 C++ 编程语言中演示单级继承(Single Level Inheritance)的概念。你将创建两个类,一个父类和一个子类,其中子类(派生类)将继承父类(基类或超类)的特性(属性和方法)。
首先,使用以下命令在 ~/project
目录下创建一个 main.cpp
文件:
touch ~/project/main.cpp
将以下代码复制并粘贴到你的 main.cpp
文件中:
#include <iostream>
// 包含所需的库
using namespace std;
// 声明一个名为 "Shape" 的父类(基类)
class Shape {
public:
float area(float l, float b) { // 计算形状面积的方法
return (l * b);
}
float perimeter(float l, float b) { // 计算形状周长的方法
return (2 * (l + b));
}
};
// 声明一个名为 "Rectangle" 的子类(派生类),它继承自 Shape 类
class Rectangle: private Shape {
private:
float length,
breadth;
public:
Rectangle(): length(0.0), breadth(0.0) {} // Rectangle 的默认构造函数
void getDimensions() { // 从用户获取矩形尺寸的方法
cout << "\n输入矩形的长度:";
cin >> length;
cout << "\n输入矩形的宽度:";
cin >> breadth;
}
// 使用 Shape 类计算矩形周长的方法
float perimeter() {
// 调用 Shape 类的 perimeter() 方法并返回结果
return Shape::perimeter(length, breadth);
}
// 使用 Shape 类计算矩形面积的方法
float area() {
// 调用 Shape 类的 area() 方法并返回结果
return Shape::area(length, breadth);
}
};
int main() {
// 创建 Rectangle 类的对象
Rectangle rect;
// 欢迎信息
cout << "\n\n欢迎来到单级继承程序!\n";
// 给用户的信息
cout << "\nRectangle 类继承自 Shape 类。\n\n";
// 从用户获取矩形的尺寸
rect.getDimensions();
// 使用父类 Shape 计算矩形的周长并显示结果
cout << "\n使用父类 Shape 计算的矩形周长:" << rect.perimeter() << "\n";
// 使用父类 Shape 计算矩形的面积并显示结果
cout << "使用父类 Shape 计算的矩形面积:" << rect.area() << "\n\n";
return 0;
}
接下来,使用以下命令编译代码:
g++ main.cpp -o main && ./main
然后,使用以下命令运行代码:
./main
运行程序后,你将看到以下输出:
欢迎来到单级继承程序!
Rectangle 类继承自 Shape 类。
输入矩形的长度: 5
输入矩形的宽度: 10
使用父类 Shape 计算的矩形周长: 30
使用父类 Shape 计算的矩形面积: 50
程序会提示用户输入矩形的长度和宽度。获取尺寸后,它会使用父类 Shape
中的 perimeter()
和 area()
函数计算矩形的周长和面积。
恭喜!你已经成功编写了一个演示单级继承概念的 C++ 程序。你可以尝试不同的形状,程序的输出将准确反映任何新派生类的计算结果。