1、 cout小狗:d.getAge()岁,重d.getWeight()class Rectangle Rectangle(int xx1,int yy1,int xx2,int yy2) x1=xx1; y1=yy1; x2=xx2; y2=yy2; float getArea() return fabs(x2-x1)*fabs(y2-y1); int x1,y1; int x2,y2; Rectangle rec(0,0,10,20);矩形面积:rec.getArea()4-11 定义并实现一个矩形类,有长、宽两个属性,由成员函数计算矩形的面积。 Rectangle(int l,int w)
2、length=l; width=w; return length*width; int length; int width; Rectangle rec(10,20);4-13 定义一个Circle类,有数据成员radius(半径),成员函数getArea(),计算圆的面积,构造一个Circle的对象进行测试。const float PI=3.1415;class Circle Circle(float r) radius=r; return radius*PI*PI; float radius; Circle c(5.5);圆的面积:c.getArea()4-20 定义一个复数类Comple
3、x,使得下面的代码能够工作。Complex c1(3,5);Complex c2=4.5;c1.add(c2);c1.show();/源程序如下:class Complex Complex(float r=0.0,float i=0.0) real=r; image=i; void add(Complex b) real=real+b.real; image=image+b.image; void show() coutreal+imagei float real; /实部 float image; /虚部 Complex c1(3,5); Complex c2=4.5; /相当于Comple
4、x c2(4.5); c1.add(c2); c1.show();5-7 定义一个Cat类,拥有静态数据成员numOfCats,记录Cat的个体数目;静态成员函数getNumOfCats(),读取numOfCats。设计程序测试这个类,体会静态数据成员和静态成员函数的用法。class Cat Cat() numOfCats+; Cat() numOfCats-; static int getNumOfCats() return numOfCats; static int numOfCats;int Cat:numOfCats=0;现在的Cat数量:Cat:getNumOfCats() Cat
5、a;a.getNumOfCats() Cat b;b.getNumOfCats()5-14 定义Boat与Car两个类,二者都有weight属性,定义二者的一个友元函数getTotalWeight(),计算二者的重量和。class Car;class Boat Boat(float w) friend float getTotalWeight(Boat b,Car c);class Car Car(float w)float getTotalWeight(Boat b,Car c) return b.weight+c.weight; Boat boat(3500); Car car(1000)
6、;船和汽车共重getTotalWeight(boat,car)a=a;b=b;protected: float a,b;class Rectangle : public Shape Rectangle(float l,float w):Shape(l,w) return a*b;class Circle : Circle(float r):Shape(r) return a*PI*PI;class Square : public Rectangle Square(float l):Rectangle(l,l) return a*a; Rectangle r(10,20); Circle c(5
7、); Square s(10);矩形的面积:r.getArea()正方形的面积:s.getArea()7-6 定义一个哺乳动物类Mammal,再由此派生出狗类Dog,定义一个Dog类的对象,观察基类与派生类的构造函数和析构函数的调用顺序。class Mammal Mammal()Constructing Mammal. Mammal()Desstructing Mammal.class Dog : public Mammal Dog()Constructing Dog. Dog()Desstructing Dog.7-8 定义一个Document类,有数据成员name,从Document派生出
8、Book类,增加数据成员pageCount。class Document Document(char * n) strcpy(name,n);name; char name50;class Book : public Document Book(char *n,int p):Document(n),pageCount(p)书名: Document:show();endl页数:pageCount int pageCount; Book book(C+语言程序设计,529); book.show();7-10 定义一个Object类,有数据成员weight及相应的操作函数,由此派生出Box类,增加
9、数据成员height和width及相应的操作函数,声明一个Box对象,观察构造函数与析构函数的调用顺序。class Object Object()Constructing Object. Object()Destructing Object. void setWeight(int w) int getWeight() int weight;class Box : public Object Box()Constructing Box. Box()Destructing Box. void setHeight(int h) height=h; int getHeight() return hei
10、ght; void setWidth(int w) int getWidth() return width; int height; Box box; box.setHeight(5); box.setWidth(10); box.setWeight(8);盒子:高box.getHeight(),宽box.getWidth(),重box.getWeight()8-4class Counter Counter(int ii=0) i=ii; void print()i=ispeak();8-7class Point Point(int x=0,int y=0) X=x; Y=y;(X,Y) Point& operator+() X+; Y+; return *this; Point operator+(int) Point temp=*this; int X,Y; Point p; (+p).print(); (p+).print();
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1