Senior C++ Developer – Telegram
Senior C++ Developer
12.3K subscribers
1.36K photos
3 videos
610 links
Изучаем C++.

По вопросам сотрудничества: @adv_and_pr

РКН: https://www.gosuslugi.ru/snet/676e9a1e4e740947beca35ba
Download Telegram
#вопросы_с_собеседований
Что такое инкапсуляция, наследование, полиморфизм?

Инкапсуляция
— это скрытие внутренней реализации от других компонентов (например, использование get-, set- методов).

Наследование — главное преимущество ООП. Выведенный класс (наследник) может наследовать свойства, методы и интерфейс другого класса, который называют базовым, а так же добавлять свои черты, характерные только для него.

Полиморфизм (шаблоны — статический полиморфизм, виртуальные функции, перегрузка функций и операторов — динамический полиморфизм) — повторное использование кода, одно и тоже имя класса или функции для единого класса действий. Вызов конкретной версии функции зависит от объекта, который передают в качества параметра.
Можно ли в C++ умножать или делить целое значение на степени двойки, не используя операций "*" или "/"?

Это можно делать в любом языке, где есть побитовый сдвиг. Умножению значения x на 2, например, соответствует операция x << 1, а делению y на 4 - действие y >> 4.
Получить текущее время и дату в C++

С С++11 стандартным способом является использование библиотеки chrono. Можно получить текущее время при помощи std::chrono::system_clock::now() от <chrono.h> и преобразовать его в std::time_t тип.

Затем преобразовать std::time_t на местное календарное время std::ctime в Www Mmm dd hh:mm:ss yyyy формате, как показано на картинке.
Метод map::max_size()

map::max_size() — это встроенная функция C++ STL, которая возвращает максимальное количество элементов, которые может содержать контейнер map.
Метод find_last_not_of

Ищет в данной строке последнее появление символа, отличного от символов строки str. Способы вызова и возвращаемое значение аналогичны методу find_first_of.
📌 Создание игры "Змейка" на С++ (видеокурс)

Как создать игру на чистом C++? В этом видеокурсе вы сделаете простую игру под названием Змейка на чистом C++. Создание игр на C++ — несложное дело, главное — понимание самих алгоритмов.

1. Создание карты
2. Расположение вещей
3. Логика игры
Узнаем факториал числа

Решение приведено на картинке.
CRYENGINE — мощная платформа для разработки игр в реальном времени на С++, созданная Crytek.

https://www.cryengine.com/
Реализация оператора in в С++

Оператор in есть в нескольких языках, например Python, JS. Но в С++ его не завезли, но иногда хочется чтобы он был, так почему бы его не реализовать.

Смотреть статью
#вопросы_с_собеседований
Напишите код для переворота строки

Код переворота строки для контейнеров, без временных переменных, не осуществляющий прохода по всей строке — на картинке.
Метод wcscmp()

Функция wcscmp() определена в заголовочном файле cwchar.h . Функция wcscmp() используется для сравнения двух широких строк, заканчивающихся нулем, и это сравнение выполняется лексикографически.

Подробнее можно почитать здесь.