Примеры исходного кода C++
Эта страница содержит примеры исходного кода функций стандартной библиотеки программирования C++.
https://www.sourcecodeexamples.net/p/cpp-source-code-examples.html
#cpp #programming
👉 @cpp_lib
Эта страница содержит примеры исходного кода функций стандартной библиотеки программирования C++.
https://www.sourcecodeexamples.net/p/cpp-source-code-examples.html
#cpp #programming
👉 @cpp_lib
👍9❤3🤔2🗿1
Go-like каналы на C++
Каналы (channels, pipes) – это удобная абстракция для построения приложений, работающих в многопоточной среде. Они используются для передачи сообщений между потоками и, одновременно с этим, как средство синхронизации потоков. Я буду ссылаться на "Go-style channels", т.к. на мой взгляд, важная особенность каналов в языке GO – это возможность их мультиплексировать.
Реализации каналов на языке C++, конечно же, есть, например, в библиотеке boost::fibers, можно найти реализацию двух видов каналов. В документации boost::fibers можно найти описания способов мультиплексирования, правда не самих каналов, но и к ним можно применить подобную технику.
https://habr.com/ru/articles/805561/
#cpp #programming
👉 @cpp_lib
Каналы (channels, pipes) – это удобная абстракция для построения приложений, работающих в многопоточной среде. Они используются для передачи сообщений между потоками и, одновременно с этим, как средство синхронизации потоков. Я буду ссылаться на "Go-style channels", т.к. на мой взгляд, важная особенность каналов в языке GO – это возможность их мультиплексировать.
Реализации каналов на языке C++, конечно же, есть, например, в библиотеке boost::fibers, можно найти реализацию двух видов каналов. В документации boost::fibers можно найти описания способов мультиплексирования, правда не самих каналов, но и к ним можно применить подобную технику.
https://habr.com/ru/articles/805561/
#cpp #programming
👉 @cpp_lib
👍8
Автор: Marius Iulian Mihailescu (2023)
Сформировать прочные навыки написания криптографических алгоритмов и схем/модулей безопасности с использованием языка C++23 и его новых возможностей. Эта книга научит вас правильным методам написания продвинутых криптографических алгоритмов, таких как алгоритмы криптографии на основе эллиптических кривых, криптографии на основе решетки, шифрования с поиском и гомоморфного шифрования. Вы также рассмотрите внутренние криптографические механизмы и узнаете общие способы реализации и правильного использования алгоритмов на практике.
#cpp #programming
👉 @cpp_lib
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
Что такое Uniform initialization? Aggregate initialization?
Uniform initialization, введенная в C++11, позволяет использовать единый синтаксис для инициализации переменных и объектов, начиная от примитивных типов до агрегатов¹. Другими словами, она вводит инициализацию скобками, которая использует фигурные скобки {} для заключения значений инициализатора. Синтаксис выглядит следующим образом:
Aggregate initialization - это форма инициализации списком для массивов или типов класса (часто структур или объединений), которые имеют: нет приватных или защищенных членов, нет пользовательских конструкторов, кроме явно заданных или удаленных конструкторов . Это позволяет напрямую инициализировать элементы агрегатов. Для этого мы предоставляем список инициализаторов в качестве инициализатора, который представляет собой список значений, разделенных запятыми.
Например, если у вас есть структура с несколькими членами:
Когда мы определяем объект с типом структуры, нам нужен способ инициализации нескольких членов во время инициализации:
Агрегаты используют форму инициализации, называемую агрегатной инициализацией, которая позволяет нам напрямую инициализировать элементы агрегатов. Для этого мы предоставляем список инициализаторов в качестве инициализатора, который представляет собой список значений, разделенных запятыми. Так же как обычные переменные могут быть скопированы, напрямую инициализированы или списком инициализированы, есть 3 формы агрегатной инициализации.
#cpp #programming
👉 @cpp_lib
Uniform initialization, введенная в C++11, позволяет использовать единый синтаксис для инициализации переменных и объектов, начиная от примитивных типов до агрегатов¹. Другими словами, она вводит инициализацию скобками, которая использует фигурные скобки {} для заключения значений инициализатора. Синтаксис выглядит следующим образом:
type var_name {arg1, arg2, ....arg n}
.Aggregate initialization - это форма инициализации списком для массивов или типов класса (часто структур или объединений), которые имеют: нет приватных или защищенных членов, нет пользовательских конструкторов, кроме явно заданных или удаленных конструкторов . Это позволяет напрямую инициализировать элементы агрегатов. Для этого мы предоставляем список инициализаторов в качестве инициализатора, который представляет собой список значений, разделенных запятыми.
Например, если у вас есть структура с несколькими членами:
struct Employee {
int id {};
int age {};
double wage {};
};
Когда мы определяем объект с типом структуры, нам нужен способ инициализации нескольких членов во время инициализации:
Employee joe; // как мы инициализируем joe.id, joe.age и joe.wage?
Агрегаты используют форму инициализации, называемую агрегатной инициализацией, которая позволяет нам напрямую инициализировать элементы агрегатов. Для этого мы предоставляем список инициализаторов в качестве инициализатора, который представляет собой список значений, разделенных запятыми. Так же как обычные переменные могут быть скопированы, напрямую инициализированы или списком инициализированы, есть 3 формы агрегатной инициализации.
#cpp #programming
👉 @cpp_lib
👍6
Краткое сравнение популярных функций измерения времени
Решил обновить свою старую крохотную библиотечку для тайминга кода. Измерение коротких временнЫх интервалов в ней выполнялось с помощью: инструкции RDTSC при компиляции MSC для x86 и gettimeofday при сборке GCC под Linux. IMHO, на сегодняшний день это не самые правильные методы, и захотелось объективно выбрать что-то более точное и лёгкое. Для этого были измерены несколько параметров наиболее популярных функций измерения времени. Результатами этих измерений и делюсь с вами (вдруг кому тоже интересно).
https://habr.com/ru/articles/818965/
#cpp #programming
👉 @cpp_lib
Решил обновить свою старую крохотную библиотечку для тайминга кода. Измерение коротких временнЫх интервалов в ней выполнялось с помощью: инструкции RDTSC при компиляции MSC для x86 и gettimeofday при сборке GCC под Linux. IMHO, на сегодняшний день это не самые правильные методы, и захотелось объективно выбрать что-то более точное и лёгкое. Для этого были измерены несколько параметров наиболее популярных функций измерения времени. Результатами этих измерений и делюсь с вами (вдруг кому тоже интересно).
https://habr.com/ru/articles/818965/
#cpp #programming
👉 @cpp_lib
👍5
Шпаргалка фокусируется на языке, а не стандартной библиотеке, и учитывает особенности C++11/C++14
#cpp #programming
👉 @cpp_lib
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤5🔥2
Подборка Telegram каналов для программистов
Системное администрирование 📌
https://t.me/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
https://t.me/sysadminof Книги для админов, полезные материалы
https://t.me/i_odmin Все для системного администратора
https://t.me/i_odmin_book Библиотека Системного Администратора
https://t.me/i_odmin_chat Чат системных администраторов
https://t.me/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
https://t.me/sysadminoff Новости Линукс Linux
https://t.me/tikon_1 Новости высоких технологий, науки и техники💡
https://t.me/mir_teh Мир технологий (Technology World)
https://t.me/rust_lib Полезный контент по программированию на Rust
https://t.me/golang_lib Библиотека Go (Golang) разработчика
https://t.me/itmozg Программисты, дизайнеры, новости из мира IT.
https://t.me/phis_mat Обучающие видео, книги по Физике и Математике
https://t.me/php_lib Библиотека PHP программиста 👨🏼💻👩💻
https://t.me/nodejs_lib Подборки по Node js и все что с ним связано
https://t.me/ruby_lib Библиотека Ruby программиста
1C разработка 📌
https://t.me/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
Программирование C++📌
https://t.me/cpp_lib Библиотека C/C++ разработчика
https://t.me/cpp_knigi Книги для программистов C/C++
https://t.me/cpp_geek Учим C/C++ на примерах
Программирование Python 📌
https://t.me/pythonofff Python академия. Учи Python быстро и легко🐍
https://t.me/BookPython Библиотека Python разработчика
https://t.me/python_real Python подборки на русском и английском
https://t.me/python_360 Книги по Python Rus
Java разработка 📌
https://t.me/BookJava Библиотека Java разработчика
https://t.me/java_360 Книги по Java Rus
https://t.me/java_geek Учим Java на примерах
GitHub Сообщество 📌
https://t.me/Githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://t.me/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
https://t.me/developer_mobila Мобильная разработка
https://t.me/kotlin_lib Подборки полезного материала по Kotlin
Фронтенд разработка 📌
https://t.me/frontend_1 Подборки для frontend разработчиков
https://t.me/frontend_sovet Frontend советы, примеры и практика!
https://t.me/React_lib Подборки по React js и все что с ним связано
Разработка игр 📌
https://t.me/game_devv Все о разработке игр
Вакансии 📌
https://t.me/sysadmin_rabota Системный Администратор
https://t.me/progjob Вакансии в IT
Чат программистов📌
https://t.me/developers_ru
Библиотеки 📌
https://t.me/book_for_dev Книги для программистов Rus
https://t.me/programmist_of Книги по программированию
https://t.me/proglb Библиотека программиста
https://t.me/bfbook Книги для программистов
https://t.me/books_reserv Книги для программистов
БигДата, машинное обучение 📌
https://t.me/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning
Программирование 📌
https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций
https://t.me/coddy_academy Полезные советы по программированию
QA, тестирование 📌
https://t.me/testlab_qa Библиотека тестировщика
Шутки программистов 📌
https://t.me/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://t.me/thehaking Канал о кибербезопасности
https://t.me/xakep_1 Статьи из "Хакера"
Книги, статьи для дизайнеров 📌
https://t.me/ux_web Статьи, книги для дизайнеров
Английский 📌
https://t.me/UchuEnglish Английский с нуля
Математика 📌
https://t.me/Pomatematike Канал по математике
Excel лайфхак📌
https://t.me/Excel_lifehack
Системное администрирование 📌
https://t.me/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
https://t.me/sysadminof Книги для админов, полезные материалы
https://t.me/i_odmin Все для системного администратора
https://t.me/i_odmin_book Библиотека Системного Администратора
https://t.me/i_odmin_chat Чат системных администраторов
https://t.me/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
https://t.me/sysadminoff Новости Линукс Linux
https://t.me/tikon_1 Новости высоких технологий, науки и техники💡
https://t.me/mir_teh Мир технологий (Technology World)
https://t.me/rust_lib Полезный контент по программированию на Rust
https://t.me/golang_lib Библиотека Go (Golang) разработчика
https://t.me/itmozg Программисты, дизайнеры, новости из мира IT.
https://t.me/phis_mat Обучающие видео, книги по Физике и Математике
https://t.me/php_lib Библиотека PHP программиста 👨🏼💻👩💻
https://t.me/nodejs_lib Подборки по Node js и все что с ним связано
https://t.me/ruby_lib Библиотека Ruby программиста
1C разработка 📌
https://t.me/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
Программирование C++📌
https://t.me/cpp_lib Библиотека C/C++ разработчика
https://t.me/cpp_knigi Книги для программистов C/C++
https://t.me/cpp_geek Учим C/C++ на примерах
Программирование Python 📌
https://t.me/pythonofff Python академия. Учи Python быстро и легко🐍
https://t.me/BookPython Библиотека Python разработчика
https://t.me/python_real Python подборки на русском и английском
https://t.me/python_360 Книги по Python Rus
Java разработка 📌
https://t.me/BookJava Библиотека Java разработчика
https://t.me/java_360 Книги по Java Rus
https://t.me/java_geek Учим Java на примерах
GitHub Сообщество 📌
https://t.me/Githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://t.me/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
https://t.me/developer_mobila Мобильная разработка
https://t.me/kotlin_lib Подборки полезного материала по Kotlin
Фронтенд разработка 📌
https://t.me/frontend_1 Подборки для frontend разработчиков
https://t.me/frontend_sovet Frontend советы, примеры и практика!
https://t.me/React_lib Подборки по React js и все что с ним связано
Разработка игр 📌
https://t.me/game_devv Все о разработке игр
Вакансии 📌
https://t.me/sysadmin_rabota Системный Администратор
https://t.me/progjob Вакансии в IT
Чат программистов📌
https://t.me/developers_ru
Библиотеки 📌
https://t.me/book_for_dev Книги для программистов Rus
https://t.me/programmist_of Книги по программированию
https://t.me/proglb Библиотека программиста
https://t.me/bfbook Книги для программистов
https://t.me/books_reserv Книги для программистов
БигДата, машинное обучение 📌
https://t.me/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning
Программирование 📌
https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций
https://t.me/coddy_academy Полезные советы по программированию
QA, тестирование 📌
https://t.me/testlab_qa Библиотека тестировщика
Шутки программистов 📌
https://t.me/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://t.me/thehaking Канал о кибербезопасности
https://t.me/xakep_1 Статьи из "Хакера"
Книги, статьи для дизайнеров 📌
https://t.me/ux_web Статьи, книги для дизайнеров
Английский 📌
https://t.me/UchuEnglish Английский с нуля
Математика 📌
https://t.me/Pomatematike Канал по математике
Excel лайфхак📌
https://t.me/Excel_lifehack
👍2