std::experimental::function(3) | C++ Standard Libary | std::experimental::function(3) |
NAME¶
std::experimental::function - std::experimental::function
Synopsis¶
Defined in header <experimental/functional>
template< class > (library fundamentals TS)
class function; /* undefined */
template< class R, class... Args > (library fundamentals TS)
class function<R(Args...)>
std::experimental::function is a modified version of std::function with
support for
type-erased allocators.
Member types¶
Type Definition
std::experimental::erased_type (library fundamentals TS)
allocator_type (until library fundamentals TS v3)
std::pmr::polymorphic_allocator<> (library fundamentals TS v3)
Member functions¶
constructs a new std::experimental::function
constructor instance
(public member function)
operator= assigns a new target
(public member function)
swap swaps the contents
(public member function)
get_memory_resource retrieves a pointer to the memory resource used by
(removed in library fundamentals this object to allocate memory
TS v3) (public member function)
retrieves a type-erased
get_allocator std::pmr::polymorphic_allocator used by this object
(library fundamentals TS v3) to allocate memory
(public member function)
Non-member functions¶
std::experimental::swap(std::experimental::function) specializes
the swap algorithm
(function template)
operator== compares an
operator!= std::experimental::function
(removed in library fundamentals TS v3) with nullptr
(function template)
Helper classes¶
specializes the std::uses_allocator
std::uses_allocator<std::experimental::function> type trait
(removed in library fundamentals TS v3) (class template
specialization)
Members identical to std::function
Member types¶
Type Definition
result_type R
Member types removed in Library Fundamental TS v3
argument_type T if sizeof...(Args) == 1 and T is the first and only type in
Args...
first_argument_type T1 if sizeof...(Args) == 2 and T1 is the first of the two
types
in Args...
second_argument_type T2 if sizeof...(Args) == 2 and T2 is the second of the
two
types in Args...
Member types argument_type, first_argument_type, and (library fundamentals TS
second_argument_type are removed, because the correponding v3)
member types of std::function are removed in C++20.
Member functions¶
destructor destroys a std::function instance
(public member function of std::function<R(Args...)>)
operator bool checks if a target is contained
(public member function of std::function<R(Args...)>)
operator() invokes the target
(public member function of std::function<R(Args...)>)
Target access¶
target_type obtains the typeid of the stored target
(public member function of std::function<R(Args...)>)
target obtains a pointer to the stored target
(public member function of std::function<R(Args...)>)
2024.06.10 | http://cppreference.com |