#include<iostream> using namespace std; class Circle { protected: float radius; public: Circle(float radius = 10) :radius(radius) {} float calcArea() { float area; area = 3.14 * radius * radius; return area; } }; class Cylinder :public Circle { private: float hight; public: Cylinder(float radius = 10, float hight = 1) :radius(radius), hight(hight) {} float calcArea() { float area; area = 2 * Circle::calcArea() + 2 * 3.14 * radius * hight; cout << "圆柱的表面积是" << area << endl; return area; } };这段代码中Cylinder(float radius = 10, float hight = 1) :Circle(radius), hight(hight) {}这行代码的意思
时间: 2024-04-02 07:31:33 浏览: 102
使用include <iostream>时一定要加using namespace std
这行代码是Cylinder类的构造函数的初始化列表部分,冒号后面的部分用于对基类的构造函数进行初始化。其中,Circle(radius)表示调用Circle类的构造函数进行初始化,将传入的radius参数传递给Circle的构造函数进行初始化;hight(hight)表示将传入的hight参数赋值给Cylinder类的私有成员变量hight进行初始化。这里使用了C++的构造函数成员初始化列表的方式来完成初始化,可以在构造函数体之前对成员变量进行初始化,提高了代码的效率。
阅读全文