PageRenderTime 25ms CodeModel.GetById 19ms app.highlight 4ms RepoModel.GetById 0ms app.codeStats 0ms

/tags/rel-1.3.35/Examples/csharp/class/example.h

#
C++ Header | 39 lines | 30 code | 8 blank | 1 comment | 0 complexity | 5e779aa058486ca8df62b7c4123a9ad1 MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
 1/* File : example.h */
 2
 3class Shape {
 4public:
 5  Shape() {
 6    nshapes++;
 7  }
 8  virtual ~Shape() {
 9    nshapes--;
10  };
11  double  x, y;   
12  void    move(double dx, double dy);
13  virtual double area(void) = 0;
14  virtual double perimeter(void) = 0;
15  static  int nshapes;
16};
17
18class Circle : public Shape {
19private:
20  double radius;
21public:
22  Circle(double r) : radius(r) { };
23  virtual double area(void);
24  virtual double perimeter(void);
25};
26
27class Square : public Shape {
28private:
29  double width;
30public:
31  Square(double w) : width(w) { };
32  virtual double area(void);
33  virtual double perimeter(void);
34};
35
36
37
38
39