// 创建一个基类 Shape,其中包含一个纯虚函数 perimeter() ,用于计算形状的周长。从 Shape 派生出 Triangle 类和 Square 类,分别实现计算三角形和正方形的周长的函数。 #include #include #include using namespace std; class Shape { public: // 用于计算形状的周长 virtual double perimeter() = 0; }; class Triangle : public Shape { private: double a, b, c; public: Triangle(double a, double b, double c) : a(a), b(b), c(c) {} public: double perimeter() { return a + b + c; } }; class Square : public Shape { private: double a; public: Square(double a) : a(a) {} public: double perimeter() { return 4 * a; } }; int main() { Shape *p = new Triangle(3, 4, 5); cout << "三角形的周长是: " << p->perimeter() << endl; p = new Square(5); cout << "正方形的周长是: " << p->perimeter() << endl; return 0; }