아래의 소스는 공동환씨 저서의 뇌를 자극하는 C++ STL 121페이지에서 가져온건데요
근데 여기서 템플릿을 해석해보면 return RetType();는 return bool();혹은 return void()인데요
이 return bool();혹은 return void()은 도대체 무슨 의미인가요?
함수객체도 아닌데 int혹은 void자료형의 옆에()가 붙는 의미는 도저히 알수 없는데 int()혹은 void()의 의미를 알고 싶습니다.
#include <iostream>
#include <string>
using std::endl;
using std::cout;
using std::ostream;
using namespace std;
template <typename RetType,typename ArgType>
class Functor
{
public:
RetType operator()(ArgType data)
{cout<<data<<endl;
return RetType();}
};
int main()
{
Functor<void,int> functor1;
functor1(10);
Functor<bool,string> functor2;
functor2("Hello!");
return 0;
}