swig/Examples/csharp/class/example.h
William S Fulton 2d518c638c Add C++ nested class example
This also reverts the nested class additions to the Java/C# 'class' example
so that the 'class' example remains identical across different language modules
2013-11-30 09:23:16 +00:00

39 lines
611 B
C++

/* File : example.h */
class Shape {
public:
Shape() {
nshapes++;
}
virtual ~Shape() {
nshapes--;
};
double x, y;
void move(double dx, double dy);
virtual double area(void) = 0;
virtual double perimeter(void) = 0;
static int nshapes;
};
class Circle : public Shape {
private:
double radius;
public:
Circle(double r) : radius(r) { };
virtual double area(void);
virtual double perimeter(void);
};
class Square : public Shape {
private:
double width;
public:
Square(double w) : width(w) { };
virtual double area(void);
virtual double perimeter(void);
};