뚜둔뚜둔✩

판다의 개발일지

함수 3

[C++] 템플릿(Template) 함수

C++에서는 함수의 오버로딩이 가능하다. [C++] 함수 오버로딩(Overloading) C언어와 달리 C++에서는 함수의 인자(parameter) 타입이나 개수가 다르면 동일한 이름의 함수를 여러 개 만들 수 있다. 이를 함수 오버로딩이라 한다. int func(int param1); int func(char param1); int func(int.. pandas-are-bears.tistory.com C 언어에 비해선 편리해졌지만.. 여전히 나름의 불편함은 있다. 그 불편함은 바로 동일한 형태의 함수를 타입만 바꿔가며 일일이 다 작성해야 한다는 것이다. (오버로딩은 결국 동일 함수 이름의 사용만을 허용하는 것이기 때문) 여기서 유용한 것이 바로 C++의 템플릿이다. 템플릿은 말 그대로 일종의 "틀"을..

C · C++ 2022.07.27

[C++] 함수의 선언과 구현부 분리

선언과 구현부 분리 C++ 클래스의 멤버 함수는 클래스 안에서 구현될 수도 있고, 또는 클래스 내부에는 멤버 함수의 선언만 되고 클래스 외부에서 구현될 수 있다. (1) 클래스 내부 멤버 함수 구현 // Point.h class Point { private: int x; int y; public: int getX(void) { return x; } } ※ 클래스 내부 구현된 함수는 인라인(inline) 함수 취급되는 특징이 있다. (2) 클래스 멤버 함수의 선언과 구현부 분리 // Point.h class Point { private: int x; int y; public: int getX(void); } // Point.cpp int Point::getX(void) { return x; } 분리된 구현..

C · C++ 2022.07.13