# sigc::bound_const_volatile_mem_functor3< T_return, T_obj, T_arg1, T_arg2, T_arg3 > Class Template Reference
[mem_fun()]

bound_const_volatile_mem_functor3 encapsulates a const volatile method with 3 arguments and an object instance. More...

`#include <sigc++/functors/mem_fun.h>`

Inheritance diagram for sigc::bound_const_volatile_mem_functor3< T_return, T_obj, T_arg1, T_arg2, T_arg3 >:
[legend]

List of all members.

## Public Types
typedef base_type_::function_type | function_type
## Public Member Functions
| bound_const_volatile_mem_functor3 (const T_obj* _A_obj, function_type _A_func)
| Constructs a bound_const_volatile_mem_functor3 object that wraps the passed method.
| bound_const_volatile_mem_functor3 (const T_obj& _A_obj, function_type _A_func)
| Constructs a bound_const_volatile_mem_functor3 object that wraps the passed method.
T_return | operator() (typename type_trait< T_arg1 >::take _A_a1, typename type_trait< T_arg2 >::take _A_a2, typename type_trait< T_arg3 >::take _A_a3) const
| Execute the wrapped method operating on the stored instance.
## Public Attributes
const_volatile_limit_reference < T_obj > | obj_

## Detailed Description

### template <class T_return, class T_obj, class T_arg1, class T_arg2, class T_arg3>
class sigc::bound_const_volatile_mem_functor3< T_return, T_obj, T_arg1, T_arg2, T_arg3 >

bound_const_volatile_mem_functor3 encapsulates a const volatile method with 3 arguments and an object instance.

Use the convenience function mem_fun() to create an instance of bound_const_volatile_mem_functor3.

The following template arguments are used:

- T_arg1 Argument type used in the definition of operator()().
- T_arg2 Argument type used in the definition of operator()().
- T_arg3 Argument type used in the definition of operator()().
- T_return The return type of operator()().
- T_obj The object type.

## Constructor & Destructor Documentation

template <class T_return , class T_obj , class T_arg1 , class T_arg2 , class T_arg3 >

sigc::bound_const_volatile_mem_functor3< T_return, T_obj, T_arg1, T_arg2, T_arg3 >::bound_const_volatile_mem_functor3 | ( | const T_obj * | _A_obj,
|  | function_type | _A_func |
| ) |  |  | `[inline]`

Constructs a bound_const_volatile_mem_functor3 object that wraps the passed method.

Parameters:

  | _A_obj | Pointer to instance the method will operate on.
  | _A_func | Pointer to method will be invoked from operator()().

template <class T_return , class T_obj , class T_arg1 , class T_arg2 , class T_arg3 >

sigc::bound_const_volatile_mem_functor3< T_return, T_obj, T_arg1, T_arg2, T_arg3 >::bound_const_volatile_mem_functor3 | ( | const T_obj & | _A_obj,
|  | function_type | _A_func |
| ) |  |  | `[inline]`

Constructs a bound_const_volatile_mem_functor3 object that wraps the passed method.

Parameters:

  | _A_obj | Reference to instance the method will operate on.
  | _A_func | Pointer to method will be invoked from operator()().

## Member Function Documentation

template <class T_return , class T_obj , class T_arg1 , class T_arg2 , class T_arg3 >

T_return sigc::bound_const_volatile_mem_functor3< T_return, T_obj, T_arg1, T_arg2, T_arg3 >::operator() | ( | typename type_trait< T_arg1 >::take | _A_a1,
|  | typename type_trait< T_arg2 >::take | _A_a2,
|  | typename type_trait< T_arg3 >::take | _A_a3 |
| ) |  |  | const`[inline]`

Execute the wrapped method operating on the stored instance.

Parameters:

  | _A_a1 | Argument to be passed on to the method.
  | _A_a2 | Argument to be passed on to the method.
  | _A_a3 | Argument to be passed on to the method.

Returns:
  The return value of the method invocation.