나는 .hpp
파일의 클래스가 ... 누군가가 전에 부탁하지만 난 그것을 찾을 수없는 질문이있을 수 있습니다 int의 경우 double이지만 문자열의 경우는 그렇지 않습니다. 따라서 내 .hpp
파일에, 나는 번호를 수행하고 내 .cpp
파일에 내가 쓴 func
정의 :
template<>
void A::func(std::string t){ // do something in that case}
하지만 std::string
와 기능 func
를 사용할 때, 프로그램이 ... 숫자에 대한 메소드를 호출 I 그래서 하여 .hpp
파일을 대체 :
class A{
public:
A(){//constructor}
~A(){//destructor}
//some public methods and arguments
template<typename Type>
void func(Type t){//do something for numbers}
void func(std::string s);
private:
//some private methods and arguments
}
내 .cpp
파일이되었다 :
void A::func(std::string t){ // do something in that case}
그리고 모든 것이 작동합니다!
제 질문은 올바른 방법입니까?
두 번째 큰 블록이 cpp가 아닌 hpp라고 가정합니다. 사실입니까? – Bruce
네, 저 실수를 편집했습니다 ... 죄송합니다. – PinkFloyd
pb가 없으므로 직접 편집하지 않으 셨습니다. – Bruce