using namespace stdclass Cshape
{
public:
virtual double GetArea() = 0
}class Ccircle:public Cshape
{
public:
Ccircle(double r):m_r(r) {}
virtual double GetArea()
{
return (3.14 *m_r * m_r)
}
private:
double m_r
}class Csquare:public Cshape
{
public:
Csquare(double a):m_a(a) {}
virtual double GetArea()
{
return (m_a * m_a)
}
private:
double m_a
}class Crectangle:public Cshape
{
public:
Crectangle(double a, double b):m_a(a), m_b(b) {}
virtual double GetArea()
{
return (m_a * m_b)
}
private:
double m_a
double m_b
}class Ctrapeziod:public Cshape
{
public:
Ctrapeziod(double a, double b, double h):m_a(a), m_b(b), m_h(h) {}
virtual double GetArea()
{
return ((m_a + m_b) * m_h / 2)
}
private:
double m_a
double m_b
double m_h
}class Ctriangle:public Cshape
{
public:
Ctriangle(double a, double h):m_a(a), m_h(h) {}
virtual double GetArea()
{
return (m_a * m_h / 2)
}
private:
double m_h
double m_a
}int main()
{
Cshape* pShape[5]
pShape[0] = new Ccircle(5)
pShape[1] = new Ctriangle(3.4, 8.6)
pShape[2] = new Csquare(4.6)
pShape[3] = new Ctrapeziod(4.5, 7.3, 4)
pShape[4] = new Crectangle(5, 6)
cout<<"圆形面积:"<<pShape[0]->GetArea()<<endl
cout<<"三角形面积:"<<pShape[1]->GetArea()<<endl
cout<<"正方形面积:"<<pShape[2]->GetArea()<<endl
cout<<"梯形面积:"<<pShape[3]->GetArea()<<endl
cout<<"长方形面积:"<<pShape[4]->GetArea()<<endl
double sum = 0
cout<<"它们面积总和为:"
for (int i=0i!=5++i)
{
sum += pShape[i]->GetArea()
delete pShape[i]
pShape[i] = NULL
}
cout<<sum<<endl
return 0
}
#include <stdio.h>int main (void) {
float r,pi,area
pi = 3.14159
printf("请输入圆的半径r:")
scanf("%f",&r)
putchar ('\n')
area = pi*r*r
printf ("半径为%.2f的圆,其面积为:%.2f\n",r,area)
getch ()
return 0
}
运行结果
我写了个样例,你看一下,先定义Student
public class Student{
public string Name { get set }
private DateTime _birthday
public DateTime Birthday
{
get { return _birthday }
set { _birthday = value }
}
public int Age
{
get { return DateTime.Now.Year - Birthday.Year + 1 }
}
/// <summary>
/// 构造函数
/// </summary>
/// <param name="name"></param>
/// <param name="birthday"></param>
public Student(string name, string birthday)
{
this.Name = name
this.Birthday = Convert.ToDateTime(birthday)
}
/// <summary>
/// 析构函数
/// </summary>
~Student()
{
Console.WriteLine("~Student()析构函数")
}
}
调用:
static void Main(string[] args){
Console.WriteLine("****************************")
{
Dosomething()
}
GC.Collect()
Console.WriteLine("****************************")
Console.ReadKey()
}
static void Dosomething()
{
Student student = new Student("赵兰新", "1992-01-01")
Console.WriteLine("姓名:{0},出生日期:{1},年龄:{2}", student.Name, student.Birthday.ToString("yyyy-MM-dd"), student.Age)
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)