C++_BE1
405 subscribers
278 photos
1 video
42 files
523 links
Канал по C/C++, полезный и интересный контент для всех уровней.
По вопросам сотрудничества @cyberJohnny
Download Telegram
#library

Библиотека C++, предоставляющая различные параллельные структуры данных и схемы восстановления.

https://cpp.libhunt.com/xenium-alternatives
#guide

Руководство по C ++ 11: практическое руководство для программиста на каждый день.

https://stuartwheaton.com/blog/2020-06-14-c++11-guide/
#example

Могут ли статические функции быть виртуальными в C++?

В C++ статическая функция-член класса не может быть виртуальной.

Кроме того, статические функции-члены класса не могут быть const и volatile.

В примере кода приведены две функции, обе из которых не дадут программе скомпилироваться.
#article

Преобразование ста миллионов целых чисел в строки в секунду.

https://www.zverovich.net/2020/06/13/fast-int-to-string-revisited.html
#example

forward_list::unique() в C++ STL

forward_list::unique() — это встроенная функция в C++ STL, которая удаляет все последовательные повторяющиеся элементы из forward_list. Для сравнения используется бинарный предикат.
#example

Оператор присваивания ( = ), строго говоря, является бинарным оператором. Его объявление идентично объявлению любого другого бинарного оператора со следующими исключениями:

☑️ Он должен быть нестатической функцией-членом.

☑️ Он не наследуется производными классами.

☑️ Компилятор может создать функцию operator = по умолчанию для типов классов, если она не существует.

В примере показано, как объявить оператор присваивания.
C++ Concurrency in Action.pdf
6.5 MB
#books

C++ Concurrency in Action (2019)
Автор: Anthony Williams

Данная книга написана для программистов, желающих углубиться в тему многопоточности на C++. В ней подробно описано использование полезных особенностей языка, а также приведены типичные ошибки и готовые решения проблем разработки приложений с использованием нескольких потоков. Книга была обновлена и переработана, чтобы охватить последние изменения, внесенные C++14 и C++17.
#example

Декларатор ссылки lvalue: &

Содержит адрес объекта, но синтаксически ведет себя подобно объекту.

Ссылку lvalue можно считать другим именем для объекта. Объявление ссылки lvalue состоит из необязательного списка спецификаторов, за которым следует декларатор ссылки. Ссылка должна быть инициализирована и не может быть изменена.

Любой объект, адрес которого можно преобразовать в некоторый тип указателя, можно также преобразовать в аналогичный ссылочный тип. Например, любой объект, адрес которого можно преобразовать в тип char *, можно также преобразовать в тип char &.

В примере демонстрируется декларатор ссылки путем объявления объекта Person и ссылки на этот объект. Поскольку rFriend является ссылкой на myFriend, при обновлении любой из этих переменных изменяется один и тот же объект.
#video

Введение в Conan - мультиплатформенный менеджер пакетов для C/C++, который позволяет создавать и распространять двоичные файлы.

https://youtu.be/rsFA2VXwxbE
#example

Перегрузка операторов

Ключевое слово operator позволяет изменить работу конкретного оператора с экземплярами класса. Это дает оператору дополнительное значение — "перегружает" его. Компилятор различает разные значения оператора, проверяя типы его операндов.

В примере оператор + перегружается для сложения двух комплексных чисел.
C Programming Absolute Beginner's Guide.pdf
12.8 MB
#books #beginner

C Programming Absolute Beginner's Guide (2014)
Автор: Greg Perry
Количество страниц: 352

Автор книги предоставляет быстрый способ освоить Си. Вы изучите основы: как организовывать программы, хранить и отображать данные, работать с переменными, операторами ввода / вывода, указателями, массивами, функциями и многим другим.
#example

Макросы и функции

При первом знакомстве макросы могут показаться обычными вызовами функций. Конечно, у них немного странный синтаксис, но они «ведут себя» как обычные функции. Тогда в чём разница?

Макрос можно условно назвать функцией обработки и замены программного кода: после сборки программы макросы заменяются макроопределениями. На картинке показан код на Си.
Getting_Started_with_Qt_5_Introduction_to_programming_Qt_5_for_cross.pdf
3.5 MB
#books

Getting Started with Qt 5 (2019)
Автор: Benjamin Baka

Qt - это кроссплатформенный фреймворк и набор виджетов, используемый для создания приложений с графическим интерфейсом, которые могут работать на разных аппаратных и операционных системах. Его можно использовать для создания различных приложений, таких как веб-браузеры, медиаплееры (например, VLC написан на Qt). Основная цель этой книги - познакомить читателя с Qt. Используя простые примеры, автор рассказывает об основной технологии, не слишком сосредотачиваясь на теории.