템플리트 함수에 대한 간단한 예제로 작업합니다. 코드가 컴파일되어 예상대로 작동합니다. 하지만 제 질문은 "정적"이 "Cmp"와 "조명"에서 모두 필요한 이유입니다. 그렇지 않으면 컴파일되지 않습니다.템플리트 함수가 템플리트 인수를 취함
고마워요!
return C::work(a, b);
C::work(a, b)
여기에 의미 구문 "클래스 C
안에 중첩 기능 work
전화 :
template<class T> class Cmp{
public:
static int work(T a, T b) {
std::cout << "Cmp\n";
return 0;
}
};
template<class T> class Lit{
public:
static int work(T a, T b){
std::cout << "Lit\n" ;
return 0;
}
};
template<class T, class C>
int compare(const T &a, const T &b){
return C::work(a, b);
}
void test9(){
compare<double, Cmp<double> >(10.1, 20.2);
compare<char, Lit<char> >('a','b');
}
함수와 함수 템플릿을 사용하여 클래스를 사용하지 않고 모든 것을 표현할 수 있습니다. –