⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 group.h

📁 一个对象回调接口库
💻 H
📖 第 1 页 / 共 4 页
字号:
        this->value1_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass,typename type_trait<T_arg3>::pass,typename type_trait<T_arg4>::pass,typename type_trait<T_arg5>::pass>(_A_1,_A_2,_A_3,_A_4,_A_5),        this->value2_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass,typename type_trait<T_arg3>::pass,typename type_trait<T_arg4>::pass,typename type_trait<T_arg5>::pass>(_A_1,_A_2,_A_3,_A_4,_A_5)); }  #endif //SIGC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD  template <class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6>  typename deduce_result_type<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>::type  operator() (T_arg1 _A_1,T_arg2 _A_2,T_arg3 _A_3,T_arg4 _A_4,T_arg5 _A_5,T_arg6 _A_6) const    { return this->func_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename value1_type::template deduce_result_type<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>::type,          typename value2_type::template deduce_result_type<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>::type>(        this->value1_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass,typename type_trait<T_arg3>::pass,typename type_trait<T_arg4>::pass,typename type_trait<T_arg5>::pass,typename type_trait<T_arg6>::pass>(_A_1,_A_2,_A_3,_A_4,_A_5,_A_6),        this->value2_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass,typename type_trait<T_arg3>::pass,typename type_trait<T_arg4>::pass,typename type_trait<T_arg5>::pass,typename type_trait<T_arg6>::pass>(_A_1,_A_2,_A_3,_A_4,_A_5,_A_6)); }  #ifndef SIGC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD  template <class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6>  typename deduce_result_type<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>::type  sun_forte_workaround (T_arg1 _A_1,T_arg2 _A_2,T_arg3 _A_3,T_arg4 _A_4,T_arg5 _A_5,T_arg6 _A_6) const    { return this->func_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename value1_type::template deduce_result_type<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>::type,          typename value2_type::template deduce_result_type<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>::type>(        this->value1_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass,typename type_trait<T_arg3>::pass,typename type_trait<T_arg4>::pass,typename type_trait<T_arg5>::pass,typename type_trait<T_arg6>::pass>(_A_1,_A_2,_A_3,_A_4,_A_5,_A_6),        this->value2_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass,typename type_trait<T_arg3>::pass,typename type_trait<T_arg4>::pass,typename type_trait<T_arg5>::pass,typename type_trait<T_arg6>::pass>(_A_1,_A_2,_A_3,_A_4,_A_5,_A_6)); }  #endif //SIGC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD  template <class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6,class T_arg7>  typename deduce_result_type<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>::type  operator() (T_arg1 _A_1,T_arg2 _A_2,T_arg3 _A_3,T_arg4 _A_4,T_arg5 _A_5,T_arg6 _A_6,T_arg7 _A_7) const    { return this->func_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename value1_type::template deduce_result_type<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>::type,          typename value2_type::template deduce_result_type<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>::type>(        this->value1_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass,typename type_trait<T_arg3>::pass,typename type_trait<T_arg4>::pass,typename type_trait<T_arg5>::pass,typename type_trait<T_arg6>::pass,typename type_trait<T_arg7>::pass>(_A_1,_A_2,_A_3,_A_4,_A_5,_A_6,_A_7),        this->value2_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass,typename type_trait<T_arg3>::pass,typename type_trait<T_arg4>::pass,typename type_trait<T_arg5>::pass,typename type_trait<T_arg6>::pass,typename type_trait<T_arg7>::pass>(_A_1,_A_2,_A_3,_A_4,_A_5,_A_6,_A_7)); }  #ifndef SIGC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD  template <class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6,class T_arg7>  typename deduce_result_type<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>::type  sun_forte_workaround (T_arg1 _A_1,T_arg2 _A_2,T_arg3 _A_3,T_arg4 _A_4,T_arg5 _A_5,T_arg6 _A_6,T_arg7 _A_7) const    { return this->func_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename value1_type::template deduce_result_type<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>::type,          typename value2_type::template deduce_result_type<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>::type>(        this->value1_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass,typename type_trait<T_arg3>::pass,typename type_trait<T_arg4>::pass,typename type_trait<T_arg5>::pass,typename type_trait<T_arg6>::pass,typename type_trait<T_arg7>::pass>(_A_1,_A_2,_A_3,_A_4,_A_5,_A_6,_A_7),        this->value2_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass,typename type_trait<T_arg3>::pass,typename type_trait<T_arg4>::pass,typename type_trait<T_arg5>::pass,typename type_trait<T_arg6>::pass,typename type_trait<T_arg7>::pass>(_A_1,_A_2,_A_3,_A_4,_A_5,_A_6,_A_7)); }  #endif //SIGC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD  lambda_group2(typename type_trait<T_functor>::take _A_func, typename type_trait<T_type1>::take _A_1,typename type_trait<T_type2>::take _A_2)    : value1_(_A_1),value2_(_A_2), func_(_A_func) {}  value1_type value1_;  value2_type value2_;  mutable functor_type func_;};template <class T_functor, class T_type1,class T_type2>typename lambda_group2<T_functor, T_type1,T_type2>::result_typelambda_group2<T_functor, T_type1,T_type2>::operator ()() const  { return func_(value1_(),value2_()); }template <class T_action, class T_functor, class T_type1,class T_type2>void visit_each(const T_action& _A_action,                const lambda_group2<T_functor, T_type1,T_type2>& _A_target){  visit_each(_A_action, _A_target.value1_);  visit_each(_A_action, _A_target.value2_);  visit_each(_A_action, _A_target.func_);}template <class T_functor, class T_type1,class T_type2,class T_type3>struct lambda_group3 : public lambda_base{  typedef typename functor_trait<T_functor>::result_type result_type;  typedef typename lambda<T_type1>::lambda_type   value1_type;  typedef typename lambda<T_type2>::lambda_type   value2_type;  typedef typename lambda<T_type3>::lambda_type   value3_type;  typedef typename adaptor_trait<T_functor>::adaptor_type functor_type;  template <class T_arg1=void,class T_arg2=void,class T_arg3=void,class T_arg4=void,class T_arg5=void,class T_arg6=void,class T_arg7=void>  struct deduce_result_type    { typedef typename functor_type::template deduce_result_type<          typename value1_type::template deduce_result_type<            typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass,typename type_trait<T_arg3>::pass,typename type_trait<T_arg4>::pass,typename type_trait<T_arg5>::pass,typename type_trait<T_arg6>::pass,typename type_trait<T_arg7>::pass>::type,          typename value2_type::template deduce_result_type<            typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass,typename type_trait<T_arg3>::pass,typename type_trait<T_arg4>::pass,typename type_trait<T_arg5>::pass,typename type_trait<T_arg6>::pass,typename type_trait<T_arg7>::pass>::type,          typename value3_type::template deduce_result_type<            typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass,typename type_trait<T_arg3>::pass,typename type_trait<T_arg4>::pass,typename type_trait<T_arg5>::pass,typename type_trait<T_arg6>::pass,typename type_trait<T_arg7>::pass>::type        >::type type; };  result_type  operator ()() const;  template <class T_arg1>  typename deduce_result_type<T_arg1>::type  operator() (T_arg1 _A_1) const    { return this->func_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename value1_type::template deduce_result_type<T_arg1>::type,          typename value2_type::template deduce_result_type<T_arg1>::type,          typename value3_type::template deduce_result_type<T_arg1>::type>(        this->value1_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass>(_A_1),        this->value2_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass>(_A_1),        this->value3_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass>(_A_1)); }  #ifndef SIGC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD  template <class T_arg1>  typename deduce_result_type<T_arg1>::type  sun_forte_workaround (T_arg1 _A_1) const    { return this->func_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename value1_type::template deduce_result_type<T_arg1>::type,          typename value2_type::template deduce_result_type<T_arg1>::type,          typename value3_type::template deduce_result_type<T_arg1>::type>(        this->value1_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass>(_A_1),        this->value2_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass>(_A_1),        this->value3_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass>(_A_1)); }  #endif //SIGC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD  template <class T_arg1,class T_arg2>  typename deduce_result_type<T_arg1,T_arg2>::type  operator() (T_arg1 _A_1,T_arg2 _A_2) const    { return this->func_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename value1_type::template deduce_result_type<T_arg1,T_arg2>::type,          typename value2_type::template deduce_result_type<T_arg1,T_arg2>::type,          typename value3_type::template deduce_result_type<T_arg1,T_arg2>::type>(        this->value1_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass>(_A_1,_A_2),        this->value2_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass>(_A_1,_A_2),        this->value3_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass>(_A_1,_A_2)); }  #ifndef SIGC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD  template <class T_arg1,class T_arg2>  typename deduce_result_type<T_arg1,T_arg2>::type  sun_forte_workaround (T_arg1 _A_1,T_arg2 _A_2) const    { return this->func_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename value1_type::template deduce_result_type<T_arg1,T_arg2>::type,          typename value2_type::template deduce_result_type<T_arg1,T_arg2>::type,          typename value3_type::template deduce_result_type<T_arg1,T_arg2>::type>(        this->value1_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass>(_A_1,_A_2),        this->value2_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass>(_A_1,_A_2),        this->value3_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass>(_A_1,_A_2)); }  #endif //SIGC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD  template <class T_arg1,class T_arg2,class T_arg3>  typename deduce_result_type<T_arg1,T_arg2,T_arg3>::type  operator() (T_arg1 _A_1,T_arg2 _A_2,T_arg3 _A_3) const    { return this->func_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename value1_type::template deduce_result_type<T_arg1,T_arg2,T_arg3>::type,          typename value2_type::template deduce_result_type<T_arg1,T_arg2,T_arg3>::type,          typename value3_type::template deduce_result_type<T_arg1,T_arg2,T_arg3>::type>(        this->value1_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass,typename type_trait<T_arg3>::pass>(_A_1,_A_2,_A_3),        this->value2_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass,typename type_trait<T_arg3>::pass>(_A_1,_A_2,_A_3),        this->value3_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass,typename type_trait<T_arg3>::pass>(_A_1,_A_2,_A_3)); }  #ifndef SIGC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD  template <class T_arg1,class T_arg2,class T_arg3>  typename deduce_result_type<T_arg1,T_arg2,T_arg3>::type  sun_forte_workaround (T_arg1 _A_1,T_arg2 _A_2,T_arg3 _A_3) const    { return this->func_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<          typename value1_type::template deduce_result_type<T_arg1,T_arg2,T_arg3>::type,          typename value2_type::template deduce_result_type<T_arg1,T_arg2,T_arg3>::type,          typename value3_type::template deduce_result_type<T_arg1,T_arg2,T_arg3>::type>(        this->value1_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -