std::strtol

Defined in header <cstdlib> long strtol( const char *str, char **str_end, int base ); long long strtoll( const char *str, char **str_end, int base ); (since C++11) Interprets an integer value in a byte string pointed to by str. Discards any whitespace characters (as identified by calling isspace()) until the first non-whitespace character is found, then takes as many characters as possible to form a valid base-n (where n=base) integer number representation and co

std::is_literal_type

Defined in header <type_traits> template< class T > struct is_literal_type; (since C++11) If T satisfies all requirements of LiteralType, provides the member constant value equal true. For any other type, value is false. The behavior is undefined if std::remove_all_extents_t<T> is an incomplete type and not (possibly cv-qualified) void. Template parameters T - a type to check Helper variable template template< class T > constexpr bool is_l

std::basic_ofstream

Defined in header <fstream> template< class CharT, class Traits = std::char_traits<CharT> > class basic_ofstream : public std::basic_ostream<CharT, Traits> The class template basic_ofstream implements high-level output operations on file based streams. It interfaces a file-based streambuffer (std::basic_filebuf) with the high-level interface of (std::basic_ostream). A typical implementation of std::basic_ofstream holds only one non-derived data m

std::ios_base::flags

fmtflags flags() const; (1) fmtflags flags( fmtflags flags ); (2) Manages format flags. 1) returns current formatting setting. 2) replaces current settings with given ones. Parameters flags - new formatting setting. It can be a combination of the following constants: Constant Explanation dec use decimal base for integer I/O: see std::dec oct use octal base for integer I/O: see std::oct hex use hexadecimal base for integer I/O: see std::hex basefield dec|

std::numpunct::grouping

Defined in header <locale> public: std::string grouping() const; (1) protected: virtual std::string do_grouping() const; (2) 1) Public member function, calls the member function do_grouping of the most derived class. 2) Returns an std::string holding, in each char element, the number of digits in each group of the numeric output formatted by num_put::put() (and, therefore, basic_ostream::operator<<) The groups are stored as binary values: three-digit group is

std::swap

Defined in header <algorithm> Defined in header <utility> (until C++11)(since C++11) template< class T > void swap( T& a, T& b ); (1) template< class T2, size_t N > void swap( T2 (&a)[N], T2 (&b)[N]); (2) (since C++11) Exchanges the given values. 1) Swaps the values a and b. 2) Swaps the arrays a and b. In effect calls std::swap_ranges(a, a+N, b). Parameters a, b - the values to be swapped Type requirements - T must meet

Static Assertion

Performs compile-time assertion checking. Syntax static_assert ( bool_constexpr , message ) (since C++11) static_assert ( bool_constexpr ) (since C++17) Explanation bool_constexpr - a constant expression that is contextually convertible to bool message - optional (since C++17)string literal that will appear as compiler error if bool_constexpr is false A static assert declaration may appear at block scope (as a block declaration) and inside a class body (as a m

Variadic arguments

Allows a function to accept any number of arguments. Indicated by the parameter of the form ... which must appear last in the parameter-list of a function declaration. Where syntactically correct, , ... may be replaced by .... // the function declared as follows int printx(const char* fmt, ...); // may be called with one or more arguments: printx("hello world"); printx("a=%d b=%d", a, b); int printx(const char* fmt...); // same as above (comma is optional) int printy(..., const char* fmt); //

std::less

Defined in header <functional> template< class T > struct less; (until C++14) template< class T = void > struct less; (since C++14) Function object for performing comparisons. Unless specialized, invokes operator< on type T. Specializations The partial specialization of std::less for any pointer type yields a total order, even if the built-in operator< does not. The standard library provides a specialization of std::less when T is not specified,

std::match_results::operator[]

const_reference operator[]( size_type n ) const; (since C++11) If n > 0 and n < size(), returns a reference to the std::sub_match representing the part of the target sequence that was matched by the nth captured marked subexpression). If n == 0, returns a reference to the std::sub_match representing the part of the target sequence matched by the entire matched regular expression. if n >= size(), returns a reference to a std::sub_match representing an unmatched sub-expression (a