std::initializer_list — список инициализации {1, 2, 3}
operator[] — индексация
*begin()/*rbegin()
typename std::iterator_traits<Iterator>::value_type — тип значения при разыменовании
operator++() и operator++(int) — префиксная и постфиксаня формы инкремента (декремента)
operator* — разыменование итератора (получение значения)
operator+(difference_type) — инкремент (декремент) на произвольное число
operator[] — индексация в RandomAccess итераторах
operator== и operator!= — для сравнения итераторов и остановки цикла
operator= — для поддержки Output итератора
operator- — для получения расстояния между итераторами
std::chrono)
boost::format — самое лучшее от printf
boost::iostreams — расширенный std::iostream
std::ostream("blabla.txt") << std::ifstream("lala.txt").rdbuf();
std::ostream& endline(std::ostream& s) { return s << "\n" << std::flush; } std::cout << "Message" << endline;
std::hex? Манипуляции с iword и pword потока
streambuf, так как только он имеет виртуальные методы
template<class A, class B> std::ostream& operator<<(std::ostream& stream, const std::vector<A, B>& v) { std::copy(v.begin(), v.end(), std::experimental::make_ostream_joiner(stream, ", ")); } std::vector a{{7.8, 8.0, 59.9, -9.1, 1.598, 90.35}}; std::cout << a << std::endl;
new, delete
->
delete и delete[] → умные указатели и массивы
std::chrono
clocks — замер времени
system_clock — системное время
steady_clock — монотонное время, никогда не возвращается назад
high_resolution_clock — самое точное время
utc_clock, file_clock, …
time_point — временная метка
duration — разница между временными метками
duration
42s, 1min, 2us (C++14)
std::regex
regex_match — соответствие предложения регулярному выражению
std::smatch, std::cmatch — объекты совпадения
regex_search — поиск регулярного выражения
regex_replace — поиск и замена
R"match\t\n" <=> "match\\t\\n")
T атомарным — std::atomic<T>
atomic_flag — test_and_set
std::memory_order
promise — в него устанавливают результат асинхронно
future — объект, который выполнится в неизвестное время
async — обёртка над future
std::thread
yield, sleep_for
join, detach
std::filesystem
path — абстракция пути в файловой системе
path позволяют модифицировать путь
recursive_directory_iterator
file_status
space_info