본문 바로가기

Programming/Cocos2d-x (with. cpp & java )

template 사용법

맨날 까먹음..

 

code.h 

class Test : public Layer{
public:
	template<typename T1, typename T2> bool Position(T1 t1, T2 t2) {
		if (t1.x == t2.x && t1.y == t2.y) {
			return true;
		} else {
			return false;
		}
	}
//간단하게, 그냥 입력받은 T1과 T2(둘다 Vec2 기준)의 좌표값이 같을경우 True, 다를경우 false
//문제라면 float의 문제(정확성/T1,T2 둘다 Vec2로 받았을 때), 그리고 템플렛 내부의 if문에서 .x .y로 접근하다보니
//Vec2가 아닌 다른 type일 경우(예를 들면 Size(width / height)에는 터지고

//제일 큰 문제라면 템플릿은 컴파일타임에 정해지는 값을 가지고 노는거라 런타임에 바뀌는 값들을 가지고는..활용이 불가 
};