class Ctri :public Cshp { private: double l[3]; public: string gettritype() { return gettype(); } int gettricolor() { return getcolor(); } void getl() { for (int i = 0; i < 3; i++) { cin >> l[i]; } } double C(int C = 0) { for (int i = 0; i < 3; i++) { C += l[i]; } return C; } };
时间: 2024-04-27 12:21:57 浏览: 4
这是一个类 Ctri,它继承自 Cshp(假设 Cshp 是一个已经存在的类)。Ctri 类有私有成员变量 l[3],表示三角形三个边长。它还有公有成员函数 gettritype() 和 gettricolor(),分别返回三角形的类型和颜色。另外,它还有一个公有成员函数 getl(),用于输入三角形的三个边长。最后,它还有一个公有成员函数 C(),用于计算三角形的周长,并返回周长的值。
相比之前的代码,这里做了两个改动。首先,gettritype() 和 gettricolor() 函数的参数被删除了,因为它们没有被使用。其次,在 C() 函数中添加了 return C; 语句,用于返回周长的值。
需要注意的是,gettype() 和 getcolor() 函数并没有被定义,因此无法确定它们的实现方式。
相关问题
class Ctri :public Cshp { private: double l[3]; public: string gettritype(string TYPE) { return gettype(); } int gettricolor(int c) { return getcolor(); } void getl() { for (int i = 0; i < 3; i++) { cin >> l[i]; } } double C(int C = 0) { for (int i = 0; i < 3; i++) { C += l[i]; } } };
这是一个类 Ctri,它继承自 Cshp(假设 Cshp 是一个已经存在的类)。Ctri 类有私有成员变量 l[3],表示三角形三个边长。它还有公有成员函数 gettritype() 和 gettricolor(),分别返回三角形的类型和颜色。另外,它还有一个公有成员函数 getl(),用于输入三角形的三个边长。最后,它还有一个公有成员函数 C(),用于计算三角形的周长,并返回周长的值。
需要注意的是,这段代码还有一些问题。例如,gettritype() 和 gettricolor() 函数的参数 TYPE 和 c 没有被使用,而 C() 函数没有返回周长的值。另外,gettype() 和 getcolor() 函数并没有被定义,因此无法确定它们的实现方式。
设计图形类CShp,包含成员函数设置/获取图形类型(string)、设置/获取图形颜色(整数)。从CShp派生两个类CTri(三角形),CCir(圆), 并有成员函数设置/获取 数值函数和求周长函数。在main 函数中测试CTri、CCir,调用以上函数(共7个函数)
好的,以下是我为您准备的代码:
```
#include <iostream>
#include <string>
using namespace std;
class CShp {
protected:
string type;
int color;
public:
void setType(string t) {
type = t;
}
string getType() {
return type;
}
void setColor(int c) {
color = c;
}
int getColor() {
return color;
}
};
class CTri : public CShp {
private:
double a, b, c;
public:
void setSides(double x, double y, double z) {
a = x;
b = y;
c = z;
}
double getSideA() {
return a;
}
double getSideB() {
return b;
}
double getSideC() {
return c;
}
double getPerimeter() {
return a + b + c;
}
};
class CCir : public CShp {
private:
double radius;
public:
void setRadius(double r) {
radius = r;
}
double getRadius() {
return radius;
}
double getArea() {
return 3.14 * radius * radius;
}
double getPerimeter() {
return 2 * 3.14 * radius;
}
};
int main() {
CTri tri;
tri.setType("Triangle");
tri.setColor(1);
tri.setSides(3, 4, 5);
cout << "Triangle type: " << tri.getType() << endl;
cout << "Triangle color: " << tri.getColor() << endl;
cout << "Triangle side A: " << tri.getSideA() << endl;
cout << "Triangle side B: " << tri.getSideB() << endl;
cout << "Triangle side C: " << tri.getSideC() << endl;
cout << "Triangle perimeter: " << tri.getPerimeter() << endl;
CCir cir;
cir.setType("Circle");
cir.setColor(2);
cir.setRadius(5);
cout << "Circle type: " << cir.getType() << endl;
cout << "Circle color: " << cir.getColor() << endl;
cout << "Circle radius: " << cir.getRadius() << endl;
cout << "Circle area: " << cir.getArea() << endl;
cout << "Circle perimeter: " << cir.getPerimeter() << endl;
return 0;
}
```
希望这个代码能够满足您的需求,如果您有任何问题或需要进一步的帮助,请随时告诉我。