クラステンプレートと利用例

#include <stdio.h>
const double PI = 3.14159;

template<class TYPE> class CCircle
{
public:
	TYPE x;
	TYPE y;
	TYPE r;
	CCircle(){}
	CCircle(TYPE X, TYPE Y, TYPE R){x = X; y = Y; r = R;}
	TYPE CalcArea(){return r * r * PI;}
	void Move(TYPE, TYPE);
};

template <class TYPE> void CCircle<TYPE>::Move(TYPE dX, TYPE dY)
{
	x += dX;
	y += dY;
}

int main()
{
	CCircle<int> c(5, 5, 10);
	c.Move(2, 2);
	printf("面積は%d\n", c.CalcArea());
}
面積は314