std::list::emplace_back

template< class... Args > void emplace_back( Args&&... args ); (since C++11) Appends a new element to the end of the container. The element is constructed through std::allocator_traits::construct, which typically uses placement-new to construct the element in-place at the location provided by the container. The arguments args... are forwarded to the constructor as std::forward<Args>(args).... No iterators or references are invalidated. Parameters args - argum

std::locale::combine

Defined in header <locale> template< class Facet > locale combine( const locale& other ) const; Constructs a locale object which is a copy of *this except for the facet of type Facet, which is copied from other. Return value The new, nameless, locale. Exceptions std::runtime_error if other does not implement Facet. Example #include <iostream> #include <locale> int main() { const double number = 1000.25; std::cout << "\"C\" lo

direct initialization

Initializes an object from explicit set of constructor arguments. Syntax T object ( arg ); T object ( arg1, arg2, ... ); (1) T object { arg }; T object { arg1, arg2, ... }; (2) (since C++11) T ( other ) T ( arg1, arg2, ... ); (3) static_cast< T >( other ) (4) new T(args, ...) (5) Class::Class() : member(args, ...) {... (6) [arg](){... (7) (since C++11) Explanation Direct initialization is performed in the following situations: 1) in

integer literal

Allows values of integer type to be used in expressions directly. Syntax An integer literal is a primary expression of the form. decimal-literal integer-suffix(optional) (1) octal-literal integer-suffix(optional) (2) hex-literal integer-suffix(optional) (3) binary-literal integer-suffix(optional) (4) (since C++14) where. decimal-literal is a non-zero decimal digit (1, 2, 3, 4, 5, 6, 7, 8, 9), followed by zero or more decimal digits (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)

std::basic_regex

Defined in header <regex> template < class CharT, class Traits = std::regex_traits<CharT> > class basic_regex; (since C++11) The class template basic_regex provides a general framework for holding regular expressions. Several specializations for common character types are provided: Defined in header <regex> Type Definition regex basic_regex<char> wregex basic_regex<wchar_t> Member types Member type Definition va

std::shared_ptr::operators (&gt;=)

Compare two shared_ptr objects template < class T, class U > bool operator==( const shared_ptr<T>& lhs, const shared_ptr<U>& rhs ); (1) (since C++11) template< class T, class U > bool operator!=( const shared_ptr<T>& lhs, const shared_ptr<U>& rhs ); (2) (since C++11) template< class T, class U > bool operator<( const shared_ptr<T>& lhs, const shared_ptr<U>& rhs ); (3) (since C++11) templat

std::set::set

(1) explicit set( const Compare& comp = Compare(), const Allocator& alloc = Allocator() ); (until C++14) set() : set( Compare() ) {} explicit set( const Compare& comp, const Allocator& alloc = Allocator() ); (since C++14) explicit set( const Allocator& alloc ); (1) (since C++11) (2) template< class InputIt > set( InputIt first, InputIt last, const Compare& comp = Compare(), const Allocator& alloc = Al

std::is_copy_constructible

Defined in header <type_traits> template< class T > struct is_copy_constructible; (1) (since C++11) template< class T > struct is_trivially_copy_constructible; (2) (since C++11) template< class T > struct is_nothrow_copy_constructible; (3) (since C++11) 1) If T is not a referenceable type (i.e., possibly cv-qualified void or a function type with a cv-qualifier-seq or a ref-qualifier), provides a member constant value equal to false. Otherwise,

std::binary_function

Defined in header <functional> template< class Arg1, class Arg2, class Result > struct binary_function; (until C++17)(deprecated since c++11) binary_function is a base class for creating function objects with two arguments. binary_function does not define operator(); it is expected that derived classes will define this. binary_function provides only three types - first_argument_type, second_argument_type and result_type - defined by the template parameter

std::remove_all_extents

Defined in header <type_traits> template< class T > struct remove_all_extents; (since C++11) If T is a multidimensional array of some type X, provides the member typedef type equal to X, otherwise type is T. Member types Name Definition type the type of the element of T Helper types template< class T > using remove_all_extents_t = typename remove_all_extents<T>::type; (since C++14) Possible implementation template<class T>