From 2824b0cbb66e715490e1ef13250bd675d87b32d9 Mon Sep 17 00:00:00 2001 From: William S Fulton Date: Wed, 2 Jun 2010 20:53:17 +0000 Subject: rel-2.0.0 git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/tags/rel-2.0.0@12089 626c5289-ae23-0410-ae9c-e8d60b6d4f22 --- trunk/Examples/php/disown/example.h | 50 +++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 trunk/Examples/php/disown/example.h (limited to 'trunk/Examples/php/disown/example.h') diff --git a/trunk/Examples/php/disown/example.h b/trunk/Examples/php/disown/example.h new file mode 100644 index 000000000..985bc333d --- /dev/null +++ b/trunk/Examples/php/disown/example.h @@ -0,0 +1,50 @@ +/* File : example.h */ + +#include + +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; + static int get_nshapes(); +}; + +class Circle : public Shape { +private: + double radius; +public: + Circle(double r) : radius(r) { }; + ~Circle() { }; + void set_radius( double r ); + virtual double area(void); + virtual double perimeter(void); +}; + +class Square : public Shape { +private: + double width; +public: + Square(double w) : width(w) { }; + ~Square() { } + virtual double area(void); + virtual double perimeter(void); +}; + +class ShapeContainer { +private: + typedef std::vector::iterator iterator; + std::vector shapes; +public: + ShapeContainer() : shapes() {}; + ~ShapeContainer(); + void addShape( Shape *s ); +}; -- cgit v1.2.1