Please open Telegram to view this post
VIEW IN TELEGRAM
Константные методы
В C++, ключевое слово
Когда вы вызываете константный метод для объекта класса, компилятор гарантирует, что внутри этого метода вы не будете изменять члены данных объекта, кроме членов, объявленных как
В C++, ключевое слово
const
имеет различное значение в зависимости от контекста. Оно может быть применено к методам классов для указания, что метод не будет изменять состояние объекта, на котором он вызывается. Такие методы называются «константными методами». Когда вы вызываете константный метод для объекта класса, компилятор гарантирует, что внутри этого метода вы не будете изменять члены данных объекта, кроме членов, объявленных как
mutable
(они могут изменяться внутри константных методов).🤔 Очередной #дайджест по С++
💠 Современный С++ в разработке девайсов — подход к разработке приложений на С++ для умных устройств с виртуальным ассистентом
💠 Подготовка инструментов под фаззинг UEFI на базе edk2 в Windows — об одном из способов с использованием программного эмулятора EDKII, чтобы проводить фаззинг без развертывания аппаратных стендов
💠 Книга «Разработка приложений на C++ с использованием Boost» — рассказывается о библиотеках Boost, которые помогают разрабатывать качественные, быстрые и портативные приложения
💠 Проектно-ориентированное обучение — список пошаговых туториалов: реализация аллокаторов, файловых систем, текстовых редакторов, баз данных с нуля
💠 Ranges Library в C++20 — уникальные дизайнерские решения для повышения производительности
💠 Современный С++ в разработке девайсов — подход к разработке приложений на С++ для умных устройств с виртуальным ассистентом
💠 Подготовка инструментов под фаззинг UEFI на базе edk2 в Windows — об одном из способов с использованием программного эмулятора EDKII, чтобы проводить фаззинг без развертывания аппаратных стендов
💠 Книга «Разработка приложений на C++ с использованием Boost» — рассказывается о библиотеках Boost, которые помогают разрабатывать качественные, быстрые и портативные приложения
💠 Проектно-ориентированное обучение — список пошаговых туториалов: реализация аллокаторов, файловых систем, текстовых редакторов, баз данных с нуля
💠 Ranges Library в C++20 — уникальные дизайнерские решения для повышения производительности
Какой ссылочный модификатор используется для определения ссылочной переменной?
Anonymous Quiz
4%
$
2%
#
87%
&
6%
Ничего из вышеперечисленного
🧑💻 Статьи для IT: как объяснять и распространять значимые идеи
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
📚 C++ System Programming Cookbook (2020)
✍️ Автор: Онорато Ватиконе
📃 Cтраниц: 292
C++ является хорошим выбором для системного программирования из-за его эффективных низкоуровневых вычислений, абстракции данных и объектно-ориентированных особенностей. Системное программирование — это разработка и написание компьютерных программ, которые тесно взаимодействуют с базовой операционной системой и позволяют компьютерному оборудованию взаимодействовать с программистом и пользователем. Данная книга послужит справочником для разработчиков, которые хотят иметь готовые к использованию решения для основных аспектов системного программирования
Что внутри:
🔸 Ознакомитесь с основами, включая makefile, компиляцию, связывание и отладку
🔸 Углубите свои знания об управлении памятью
🔸 Используете процессы и потоки для синхронизации
🔸 Узнаете, как правильно взаимодействовать с консолью
✍️ Автор: Онорато Ватиконе
📃 Cтраниц: 292
C++ является хорошим выбором для системного программирования из-за его эффективных низкоуровневых вычислений, абстракции данных и объектно-ориентированных особенностей. Системное программирование — это разработка и написание компьютерных программ, которые тесно взаимодействуют с базовой операционной системой и позволяют компьютерному оборудованию взаимодействовать с программистом и пользователем. Данная книга послужит справочником для разработчиков, которые хотят иметь готовые к использованию решения для основных аспектов системного программирования
Что внутри:
🔸 Ознакомитесь с основами, включая makefile, компиляцию, связывание и отладку
🔸 Углубите свои знания об управлении памятью
🔸 Используете процессы и потоки для синхронизации
🔸 Узнаете, как правильно взаимодействовать с консолью
🧑🔬🏥 CLI'нический парсинг
Каждый программист однажды получает по голове необходимостью парсить аргументы командной строки. Кого-то этот удар сломит и заставит написать несколько сотен строк кода, по которому потом будут восстанавливать интерфейс программы следующие поколения, другие сделают наборы рантайм мап и начнут оперировать строками, по которым будет уже непонятно, то ли это так и должно быть, то ли опечатка... Последние в порыве отчаяния возьмут целый boost для этой задачи, а тот сведётся всё к тем же рантайм мапам и строкам.
Здесь вы найдете увлекательный процесс создания этого Франкенштейна
#гайд
Каждый программист однажды получает по голове необходимостью парсить аргументы командной строки. Кого-то этот удар сломит и заставит написать несколько сотен строк кода, по которому потом будут восстанавливать интерфейс программы следующие поколения, другие сделают наборы рантайм мап и начнут оперировать строками, по которым будет уже непонятно, то ли это так и должно быть, то ли опечатка... Последние в порыве отчаяния возьмут целый boost для этой задачи, а тот сведётся всё к тем же рантайм мапам и строкам.
Здесь вы найдете увлекательный процесс создания этого Франкенштейна
#гайд
🧨⚠️ ТОП-10 ошибок в C и С++ проектах в 2023 году
Не просто статья о том, как где-то в коде допустили ошибку, а целое волшебство кодинга. 10 масштабных и зрелищных разборов ошибок.
Читать статью
#почитать
Не просто статья о том, как где-то в коде допустили ошибку, а целое волшебство кодинга. 10 масштабных и зрелищных разборов ошибок.
Читать статью
#почитать
Что будет, если в двух файлах сделать функцию с одинаковым именем и параметрами? На каком этапе возникнет ошибка?
💩 Если вы определите функцию с одинаковым именем и параметрами в двух разных файлах, это нарушит One Definition Rule. Это правило гласит, что в пределах одной программы не может быть более одного определения любой переменной, функции или класса.
💩 Ошибка обычно возникает на этапе компоновки, когда компоновщик обнаруживает, что два объектных файла содержат определения для одной и той же функции. Компоновщик выдаст ошибку множественного определения и откажется создавать исполняемый файл.
💩 Один из способов решения этой проблемы - использование пространств имен. Вы можете поместить каждую функцию в свое собственное пространство имен, чтобы избежать конфликта имен. Например:
💩 Теперь вы можете использовать обе функции в своей программе, указывая пространство имен перед именем функции:
// fileA.cpp
namespace FileA {
void foo(int a) {
// Some code for file A
}
}
// fileB.cpp
namespace FileB {
void foo(int a) {
// Some code for file B
}
}
FileA::foo(1)
; и FileB::foo(2);
.Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Книги для C/C++ разработчиков
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Очередной #дайджест по С++
🍬 Книга «Coding Clean, Reliable, and Safe REST APIs with ASP.NET Core 8» — все о протоколе HTTP, стиле архитектуры REST и ASP.NET Core 8
🍬 Крутые функции современного C++ для использования в вашем проекте — парочка современных функций C++ и объяснение на минималистичном примере
🍬 Современный С++ в разработке девайсов — детали подхода разработки и взаимодействия с виртуальным ассистентом
🍬 Длительность хранения и Non-local Objects в C++ — рассмотрение глобальных переменных, динамических и локальных объектов потоков
🍬 Технические собеседования — что болит у тех, кто их проводит и кто на них приходит
🍬 Книга «Coding Clean, Reliable, and Safe REST APIs with ASP.NET Core 8» — все о протоколе HTTP, стиле архитектуры REST и ASP.NET Core 8
🍬 Крутые функции современного C++ для использования в вашем проекте — парочка современных функций C++ и объяснение на минималистичном примере
🍬 Современный С++ в разработке девайсов — детали подхода разработки и взаимодействия с виртуальным ассистентом
🍬 Длительность хранения и Non-local Objects в C++ — рассмотрение глобальных переменных, динамических и локальных объектов потоков
🍬 Технические собеседования — что болит у тех, кто их проводит и кто на них приходит
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔❓ Так сколько на самом деле строк на C нужно, чтобы выполнить a + b в Python?
Автор решил, что будет сравнивать разницу не в интерактивном режиме, а при чтении из файла. Потому, что в это случае, можно избавиться от лишних процедур ввода вывода для интерактивного режима. Соответственно Python будет исполнять файл. И вот будет сравниваться разница между выполнением пустого файла и файла, где сложение надо будет произвести. Что для этого нужно:
🔹 узнать сколько строк Python нужно вообще, чтобы исполнить пустой файл и выйти без ошибок
🔹 узнать сколько строк Python нужно, чтобы исполнить файл где надо сложить два числа не сохраняя никуда результат
🔹 узнать сколько строк Python нужно вообще, чтобы исполнить файл где идет сложение двух переменных содержащих числа
Читать статью
#почитать
Автор решил, что будет сравнивать разницу не в интерактивном режиме, а при чтении из файла. Потому, что в это случае, можно избавиться от лишних процедур ввода вывода для интерактивного режима. Соответственно Python будет исполнять файл. И вот будет сравниваться разница между выполнением пустого файла и файла, где сложение надо будет произвести. Что для этого нужно:
🔹 узнать сколько строк Python нужно вообще, чтобы исполнить пустой файл и выйти без ошибок
🔹 узнать сколько строк Python нужно, чтобы исполнить файл где надо сложить два числа не сохраняя никуда результат
🔹 узнать сколько строк Python нужно вообще, чтобы исполнить файл где идет сложение двух переменных содержащих числа
Читать статью
#почитать
Мы продолжаем собирать ваши истории о смене профессии и трудоустройстве в IT, чтобы написать большую аналитическую статью.
👉Если вы еще не рассказывали о своем опыте, пройдите короткий опрос по ссылке.
Please open Telegram to view this post
VIEW IN TELEGRAM
🥸👁️ Отслеживание изменений в директории с помощью Inotify
Автор материала столкнулся с задачей, где необходимо было отслеживать в ОС Linux изменение файла в директории на чистом С++. Так как чистый С++, Qt с его QFileSystemWatcher сразу отпадал, из-за того что необходимо было подключать QObject. В итоге выбор пал на линуксовую функцию Inotify.
Inotify позволяет через файловый дескриптор наблюдать за директорией или файлом, отслеживая их события. Все события ввода-вывода ссылаются на открытый файл с использованием файлового дескриптора. Файловый дескриптор представляет собой целое число типа int.
Работа типичной программы мониторинга организована следующим образом:
♦️ С помощью inotify_init() открывается файловый дескриптор
♦️ Добавляется одно или несколько событий для наблюдений
♦️ Ожидаем добавленное событие
♦️ Обрабатываются события, после чего снова начинаем ждать в бесконечном цикле
♦️ При отсутствии активных наблюдений или при получении определенного сигнала файловый дескриптор закрывается, выполняется очистка и программа завершает работу.
#туториал
Автор материала столкнулся с задачей, где необходимо было отслеживать в ОС Linux изменение файла в директории на чистом С++. Так как чистый С++, Qt с его QFileSystemWatcher сразу отпадал, из-за того что необходимо было подключать QObject. В итоге выбор пал на линуксовую функцию Inotify.
Inotify позволяет через файловый дескриптор наблюдать за директорией или файлом, отслеживая их события. Все события ввода-вывода ссылаются на открытый файл с использованием файлового дескриптора. Файловый дескриптор представляет собой целое число типа int.
Работа типичной программы мониторинга организована следующим образом:
♦️ С помощью inotify_init() открывается файловый дескриптор
♦️ Добавляется одно или несколько событий для наблюдений
♦️ Ожидаем добавленное событие
♦️ Обрабатываются события, после чего снова начинаем ждать в бесконечном цикле
♦️ При отсутствии активных наблюдений или при получении определенного сигнала файловый дескриптор закрывается, выполняется очистка и программа завершает работу.
#туториал
🎄✨ До Нового года осталось меньше недели, поэтому мы подводим итоги
🧑🎄 За год наше комьюнити стало больше почти на 4000 человек
❤️ Особенно вам понравились вот эти посты:
Свежие и обновленные статьи
LMDeploy — это набор инструментов для сжатия, развертывания и обслуживания LLM
Перегрузка операторов
Позднее связывание
Дайджест статей и материалов
💜 А ещё вы с интересом читали эти статьи:
Итог одной валютной удаленки: проработал месяц бесплатно и ушел с долгами
ТОП-10 книг по языку программирования С++ в 2023 году
ТОП-9 не самых очевидных компаний для стажировки в ИТ
🧑💻 В 2023 году мы запустили несколько новых каналов:
Библиотека собеса по C/C++ | вопросы с собеседований
Библиотека задач по C/C++ | тесты, код, задания
Книги для C/C++ разработчиков
Кстати, в канале с книгами прямо сейчас проходит новогодний розыгрыш 👈
🎁 И последнее, но не менее важное: мы сделали скидку -35% на все курсы нашей академии proglib.academy
🧑🎄 За год наше комьюнити стало больше почти на 4000 человек
❤️ Особенно вам понравились вот эти посты:
Свежие и обновленные статьи
LMDeploy — это набор инструментов для сжатия, развертывания и обслуживания LLM
Перегрузка операторов
Позднее связывание
Дайджест статей и материалов
💜 А ещё вы с интересом читали эти статьи:
Итог одной валютной удаленки: проработал месяц бесплатно и ушел с долгами
ТОП-10 книг по языку программирования С++ в 2023 году
ТОП-9 не самых очевидных компаний для стажировки в ИТ
🧑💻 В 2023 году мы запустили несколько новых каналов:
Библиотека собеса по C/C++ | вопросы с собеседований
Библиотека задач по C/C++ | тесты, код, задания
Книги для C/C++ разработчиков
Кстати, в канале с книгами прямо сейчас проходит новогодний розыгрыш 👈
🎁 И последнее, но не менее важное: мы сделали скидку -35% на все курсы нашей академии proglib.academy