shape.h
/*
Circle
*/
namespace G_Shape
{
class Circle
{
public:
double calculate_perimeter( double radius);
double calculate_area( double radius);
private:
double radius;
};
/*
Rectangle
*/
class Rectangle
{
public:
double calculate_perimeter( double width, double height);
double calculate_area( double width, double height);
private:
double width;
double height;
};
}
Circle
*/
namespace G_Shape
{
class Circle
{
public:
double calculate_perimeter( double radius);
double calculate_area( double radius);
private:
double radius;
};
/*
Rectangle
*/
class Rectangle
{
public:
double calculate_perimeter( double width, double height);
double calculate_area( double width, double height);
private:
double width;
double height;
};
}
shape.cpp
#include
"
shape.h
"
using namespace G_Shape;
#define PI 3.14159
/*
Circle
*/
double Circle::calculate_perimeter( double radius)
{
return 2 * PI * radius;
}
double Circle::calculate_area( double radius)
{
return PI * radius * radius;
}
/*
Rectangle
*/
double Rectangle::calculate_perimeter( double width, double height)
{
return 2 * (width + height);
}
double Rectangle::calculate_area( double width, double height)
{
return width * height;
}
using namespace G_Shape;
#define PI 3.14159
/*
Circle
*/
double Circle::calculate_perimeter( double radius)
{
return 2 * PI * radius;
}
double Circle::calculate_area( double radius)
{
return PI * radius * radius;
}
/*
Rectangle
*/
double Rectangle::calculate_perimeter( double width, double height)
{
return 2 * (width + height);
}
double Rectangle::calculate_area( double width, double height)
{
return width * height;
}
mainframe.cpp
#include <iostream>
#include " draw/shape.h "
using namespace std;
using namespace G_Shape;
int main()
{
// Circle
double radius;
cout<< " Please input radius of the circle: ";
cin>>radius;
Circle c;
cout << " Circle Perimeter: " << c.calculate_perimeter(radius) <<endl;
cout << " Circle Area: " << c.calculate_area(radius) <<endl;
// Rectangle
double width, height;
cout<< " Please input width of the rectangle: ";
cin>>width;
cout<< " Please input height of the rectangle: ";
cin>>height;
Rectangle r;
cout << " Rectangle Perimeter: " << r.calculate_perimeter(width, height) <<endl;
cout << " Rectangle Area: " << r.calculate_area(width, height) <<endl;
return 0;
}
#include " draw/shape.h "
using namespace std;
using namespace G_Shape;
int main()
{
// Circle
double radius;
cout<< " Please input radius of the circle: ";
cin>>radius;
Circle c;
cout << " Circle Perimeter: " << c.calculate_perimeter(radius) <<endl;
cout << " Circle Area: " << c.calculate_area(radius) <<endl;
// Rectangle
double width, height;
cout<< " Please input width of the rectangle: ";
cin>>width;
cout<< " Please input height of the rectangle: ";
cin>>height;
Rectangle r;
cout << " Rectangle Perimeter: " << r.calculate_perimeter(width, height) <<endl;
cout << " Rectangle Area: " << r.calculate_area(width, height) <<endl;
return 0;
}
运行结果:
david@ubuntu:~/MyProject/Hades$ ./mainframe.exe
Please input radius of the circle:5
Circle Perimeter: 31.4159
Circle Area: 78.5397
Please input width of the rectangle:4
Please input height of the rectangle:5
Rectangle Perimeter: 18
Rectangle Area: 20