// bind.hpp
template< class A1 > class list1: private storage1< A1 >
{
template<class R, class F, class A> R operator()(type<R>, F & f, A & a, long)
{
return unwrapper<F>::unwrap(f, 0)(a[base_type::a1_]);
}
template<class F, class A> void operator()(type<void>, F & f, A & a, int)
{
unwrapper<F>::unwrap(f, 0)(a[base_type::a1_]);
}
}
为什么在int
中添加参数long
/ operator()
?
如果我删除这些int
/ long
,仍然会通过编译。