The great merge
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@4141 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
6fcc22a1f8
commit
516036631c
1508 changed files with 125983 additions and 44037 deletions
48
SWIG/Examples/pike/class/example.cxx
Executable file
48
SWIG/Examples/pike/class/example.cxx
Executable file
|
|
@ -0,0 +1,48 @@
|
|||
/* File : example.c */
|
||||
|
||||
#include "example.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#define M_PI 3.14159265358979323846
|
||||
|
||||
// Static member initializer
|
||||
int Shape::nshapes = 0;
|
||||
|
||||
// Constructor
|
||||
Shape::Shape() {
|
||||
// printf("Shape::Shape(), this = 0x%08x\n", this);
|
||||
nshapes++;
|
||||
}
|
||||
|
||||
// Move the shape to a new location
|
||||
void Shape::move(double dx, double dy) {
|
||||
x += dx;
|
||||
y += dy;
|
||||
}
|
||||
|
||||
// Destructor
|
||||
Shape::~Shape() {
|
||||
// printf("Shape::~Shape(), this = 0x%08x\n", this);
|
||||
nshapes--;
|
||||
}
|
||||
|
||||
// Circle area
|
||||
double Circle::area() {
|
||||
return M_PI*radius*radius;
|
||||
}
|
||||
|
||||
// Circle perimeter
|
||||
double Circle::perimeter() {
|
||||
return 2*M_PI*radius;
|
||||
}
|
||||
|
||||
// Square area
|
||||
double Square::area() {
|
||||
return width*width;
|
||||
}
|
||||
|
||||
// Square perimeter
|
||||
double Square::perimeter() {
|
||||
return 4*width;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue