クラスオブジェクトのテンプレート化された関数呼び出し演算子を暗黙的に呼び出すにはどうすればよいですか?
class User_Type
{
public:
template< typename T > T operator()() const;
};
void function()
{
User_Type user_var;
int int_var_0 = user_var.operator()< int >(); // explicit function call operator; ugly.
int int_var_1 = user_var< int >(); // implicit function call operator.
}
g++-4.9 -Wall -Wextra
の出力エラーは次のとおりです。
error: expected primary-expression before ‘int’
auto int_var_1 = user_var< int >();
^