std::promise::set_exception

void set_exception( std::exception_ptr p ); (since C++11) Stores the exception pointer p into the shared state and makes the state ready. The operation is atomic, i.e. it behaves as though they acquire a single mutex associated with the promise object while updating the promise object. An exception is thrown if there is no shared state or the shared state already stores a value or exception. Parameters p - exception pointer to store Return value (none). Exceptions std::

sizeof... operator

Queries the number of elements in a parameter pack. Syntax sizeof...( parameter_pack ) (since C++11) Returns a constant of type std::size_t. Explanation Returns the number of elements in a parameter pack. Keywords sizeof. Example #include <iostream> #include <array> template<typename... Ts> constexpr auto make_array(Ts&&... ts) -> std::array<std::common_type_t<Ts...>,sizeof...(ts)> { return { std::forward<Ts>(ts)...

std::basic_string::empty

bool empty() const; Checks if the string has no characters, i.e. whether begin() == end(). Parameters (none). Return value true if the string is empty, false otherwise. Exceptions (none) (until C++11) noexcept specification: noexcept (since C++11) Complexity Constant. Example #include <iostream> #include <string> int main() { std::string s; std::boolalpha(std::cout); std::cout << "s.empty():" << s.empty() << "\t s:'" &

std::move_if_noexcept

Defined in header <utility> template< class T > typename std::conditional< !std::is_nothrow_move_constructible<T>::value && std::is_copy_constructible<T>::value, const T&, T&& >::type move_if_noexcept(T& x); (since C++11) (until C++14) template< class T > constexpr typename std::conditional< !std::is_nothrow_move_constructible<T>::value && std::is_copy_constructible<T>::value,

Iterator

The Iterator concept describes types that can be used to identify and traverse the elements of a container. Iterator is the base concept used by other iterator types: InputIterator, OutputIterator, ForwardIterator, BidirectionalIterator, and RandomAccessIterator. Iterators can be thought of as an abstraction of pointers. Requirements The type It satisfies Iterator if. The type It satisfies CopyConstructible, and The type It satisfies CopyAssignable, and The type It satisfies Destructibl

std::match_results::str

string_type str( size_type n = 0 ) const; (since C++11) Returns a string representing the indicated sub-match. If n == 0, a string representing entire matched expression is returned. If n > 0 && n < size(), a string representing nth sub-match is returned. if n >= size(), a string representing the unmatched match is returned. The call is equivalent to string_type((*this)[n]); Parameters n - integral number specifying which match to return Return value Retur

std::async

Defined in header <future> (1) template< class Function, class... Args> std::future<typename std::result_of<Function(Args...)>::type> async( Function&& f, Args&&... args ); (since C++11) (until C++14) template< class Function, class... Args> std::future<std::result_of_t<std::decay_t<Function>(std::decay_t<Args>...)>> async( Function&& f, Args&&... args ); (since C++14) (2) templat

std::extreme_value_distribution::reset

void reset(); (since C++11) Resets the internal state of the distribution object. After a call to this function, the next call to operator() on the distribution object will not be dependent on previous calls to operator(). Parameters (none). Return value (none). Complexity Constant.

operator&lt;&lt;(std::thread::id)

template< class CharT, class Traits > std::basic_ostream<CharT,Traits>& operator<<( std::basic_ostream<CharT,Traits>& ost, thread::id id ); (since C++11) Writes a textual representation of a thread identifier id to the output stream ost. If two thread identifiers compare equal, they have identical textual representations; if they do not compare equal, their representations are distinct. Parameters ost - output stream to insert the data into

std::reverse_copy

Defined in header <algorithm> template< class BidirIt, class OutputIt > OutputIt reverse_copy( BidirIt first, BidirIt last, OutputIt d_first ); Copies the elements from the range [first, last) to another range beginning at d_first in such a way that the elements in the new range are in reverse order. Behaves as if by executing the assignment *(d_first + (last - first) - 1 - i) = *(first + i) once for each non-negative i < (last - first). If the source and destinati