1. 제네릭 myswap() 함수를 만드시오
2. 제네릭 스택 클래스를 만드시오
stack.cpp에 template class stack을 구현하면 cpp파일에서는 제네릭 클래스의 타입형을 알 수 없으므로 오류가 생긴다.
오류의 해결방법에는 두 가지가 있는데,
1.
template class Stack<int>;
template class Stack<double>;
위처럼 하나하나 지정해서 사용하는 방법이다. 하지만 타입형이 많으면 많을수록 귀찮아지는 단점이 있다.
2. 헤더 파일에서 구현까지 모두 하는 방법이다. 굳이 cpp파일을 만들지 않고 h파일에 구현까지 모두 시켜 놓으면 오류가 생기지 않는다.
'C++' 카테고리의 다른 글
C++ 실습 문제 20 (C++ 표준 템플릿 라이브러리- STL) (0) | 2022.05.24 |
---|---|
C++ 실습 문제 19 (C++ 표준 템플릿 라이브러리- STL) (0) | 2022.05.20 |
C++ 실습 문제 17 (virtual function, function overriding) (0) | 2022.05.20 |
C++ 실습 문제 16 (virtual function, function overriding) (0) | 2022.05.14 |
C++ 실습 문제 15 (Class Inheritance) (0) | 2022.05.11 |