본문 바로가기

파일 분할2

[ C++ ] 클래스 템플릿 ( Class Template ) 앞서 포스팅에 함수 템플릿을 설명하였다. 클래스 템플릿( Class Template )은 함수 템플릿처럼 클래스를 만들어 내는 도구이다. 그럼 점에 대한 클래스 템플릿을 만들어보자. 컴파일러는 24행의 Dot dot1(1, 2); 를 보고 Dot 템플릿 클래스를 생성하고, 25행의 Dot dot2(1.5, 2.5); 를 보고 Dot 템플릿 클래스를 생성한다. * 여기서 주의해야 할 점은, 템플릿 클래스는 템플릿 함수와 다르게 객체를 생성할 때 , 과 같은 자료형 정보가 반드시 표기되어야한다. 클래스 템플릿도 멤버함수를 클래스 외부에 정의하는 것이 가능하다. 위의 코드를 조금 수정해보겠다. 점의 x, y 좌표 값을 더하는 Adder 함수를 추가하였다. 멤버함수를 클래스 외부에 정의할 때도 template를.. 2019. 11. 30.
[ C++ ] 파일 분할 하나의 프로그램을 만들 때 하나의 소스파일에 모든 내용을 적진 않는다. 특히 C++에서는 클래스의 선언과 정의를 분리하는 경우가 많다. 클래스의 선언(declearation)은 클래스를 구성하는 외형적인 틀을 보여준다. 예로 들어서 거북이에 관한 클래스가 있다고 하자. ( 글쓴이는 거북이를 많이 좋아한다. ) #ifndef __TURTLE_H__ #define __TURTLE_H__ namespace TURTLE_CONST { enum { NAME_LEN = 20, SPEED = 100 } } class Turtle { private: char turtle_name[TURTLE_CONST::NAME_LEN]; int speed; public: void InitMembers(char.. 2019. 9. 20.