Senior C++ Developer
前往频道在 Telegram
Изучаем C++. По вопросам сотрудничества: @adv_and_pr РКН: https://www.gosuslugi.ru/snet/676e9a1e4e740947beca35ba
显示更多📈 Telegram 频道 Senior C++ Developer 的分析概览
频道 Senior C++ Developer (@seniorcpp) 俄语 语言赛道中的 是活跃参与者。目前社区聚集了 11 653 名订阅者,在 技术与应用 类别中位列第 10 351,并在 俄罗斯 地区排名第 55 044 位。
📊 受众指标与增长动态
自 невідомо 创建以来,项目保持高速增长,吸引了 11 653 名订阅者。
根据 29 八月, 2026 的最新数据,频道保持稳定运转。过去 30 天订阅人数变化为 -68,过去 24 小时变化为 -4,整体触达仍然可观。
- 认证状态: 未认证
- 互动率 (ER): 平均受众互动率为 10.67%。内容发布后 24 小时内通常能获得 4.59% 的反应,占订阅者总量。
- 帖子覆盖: 每篇帖子平均可获得 1 243 次浏览,首日通常累积 535 次浏览。
- 互动与反馈: 受众积极参与,单帖平均反应数为 0。
- 主题关注点: 内容集中在 c++, контейнер, диапазон, git, true 等核心主题上。
📝 描述与内容策略
作者将该频道定位为表达主观观点的平台:
“Изучаем C++.
По вопросам сотрудничества: @adv_and_pr
РКН: https://www.gosuslugi.ru/snet/676e9a1e4e740947beca35ba”
凭借高频更新(最新数据采集于 30 八月, 2026),频道始终保持新鲜度与高覆盖。分析显示受众积极互动,使其成为 技术与应用 类别中的关键影响点。
11 653
订阅者
-424 小时
-167 天
-6830 天
帖子存档
11 654
Автоматический вывод типа аргумента шаблона класса
Выглядит название этой возможности довольно длинным и сложным, но на самом деле ничего сложного тут нет. Основная идея в том, что в C++17 вывод типов аргументов шаблонов выполняется и для стандартных шаблонов классов. Ранее это поддерживалось лишь для функциональных шаблонов. В результате оказывается, что раньше писали так:
std::pair<std::string, int> user = {"M", 25};
С выходом C++ 17 эту конструкцию стало можно заменить на эту:
std::pair user = {"M", 25};
Вывод типов выполняется неявно. Этим механизмом ещё удобнее пользоваться в том случае, когда речь идёт о кортежах. А именно, раньше приходилось писать следующее:
std::tuple<std::string, std::string, int> user ("M", "Chy", 25);
Теперь же то же самое выглядит так:
std::tuple user2("M", "Chy", 25);
Тут стоит отметить, что эти возможности не покажутся чем-то достойным внимания тем, кто не особенно хорошо знаком с шаблонами C++.11 654
Автоматический вывод типа аргумента шаблона класса
Выглядит название этой возможности довольно длинным и сложным, но на самом деле ничего сложного тут нет. Основная идея в том, что в C++17 вывод типов аргументов шаблонов выполняется и для стандартных шаблонов классов. Ранее это поддерживалось лишь для функциональных шаблонов. В результате оказывается, что раньше писали так:
std::pair<std::string, int> user = {"M", 25};
С выходом C++ 17 эту конструкцию стало можно заменить на эту:
std::pair user = {"M", 25};
Вывод типов выполняется неявно. Этим механизмом ещё удобнее пользоваться в том случае, когда речь идёт о кортежах. А именно, раньше приходилось писать следующее:
std::tuple<std::string, std::string, int> user ("M", "Chy", 25);
Теперь же то же самое выглядит так:
std::tuple user2("M", "Chy", 25);
Тут стоит отметить, что эти возможности не покажутся чем-то достойным внимания тем, кто не особенно хорошо знаком с шаблонами C++.11 654
🌐Научитесь создавать сетевые сервисы на C++ с помощью фреймворка userver!
Приглашаем вас на открытый вебинар 17 октября в 20:00 МСК, где мы подробно разберем:
- Как подключить userver в проект;
- Как собрать userver с нужной конфигурацией;
- Как написать сетевой сервис, работающий с REST и WebSocket API;
- Как реализовать аутентификацию для нового сервиса.
🎓 Встречаемся в преддверии старта курса «C++ Developer. Professional». Все участники вебинара получат специальную цену на обучение!
🔗Регистрируйтесь прямо сейчас, чтобы не пропустить это важное мероприятие: https://otus.pw/4ykh/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
11 654
Современные возможности C++ и проверенные паттерны: активный объект, внешний полиморфизм и корутины
В этой статье автор показывает, как внешний полиморфизм (реализация полиморфного поведения вне объекта, для которого такое поведение требуется) помогает писать красивые и чистые программы, и рассказывает о некоторых базовых и продвинутых способах реализации.
Смотреть статью
11 654
Метод map::max_size()
map::max_size() — это встроенная функция C++ STL, которая возвращает максимальное количество элементов, которые может содержать контейнер map.
11 654
Алгоритм rotate
Меняет местами элементы в диапазоне [first, last) таким образом, что элемент n_first становится первым в новом диапазоне, а n_first-1 — последним.
Параметры:
first, last - диапазон элементов для изменения их порядка.
n_first - элемент, который должен стать первым в новом диапазоне.
11 654
Главная конференция по бизнесу в Telegram
31 октября в Москве пройдёт первая конференция по Telegram от крупнейшего сервиса аналитики Telemetr. Топы Телеграм-рынка, маркетологи и представители бизнеса обсудят самые актуальные тенденции и перспективы развития платформы Telegram.
Присоединиться к мероприятию можно будет и онлайн. Тут найдёте всю информацию - https://telemetr.pro.
На конференции вас ждут:
- 20+ опытных спикеров
- 1000+ онлайн и офлайн участников
- две сцены
- нетворкинг активности
- лаунж зона
- вкусный фуршет
- яркое afterparty в PAPA Moscow
Спикерами главной сцены будут: Артемий Лебедев, руководитель Telemetr - Денис Ларионов, основатель агентства GoDigital - Сурен Альбертян, основатель Сидорин ЛАБ - Дмитрий Сидорин и многие другие!
За подробностями сюда - https://telemetr.pro
А купить билет со скидкой в 10% можно, использовав наш промокод - TMConf10
Купить билет - https://telemetr.pro
11 654
this удобно использовать для цепочных вызовов
Мы можем вернуть ссылку на объект, на котором мы вызываем метод класса:
Foo &set(int x) { this->x = x; return *this; }
Здесь метод set возвращает ссылку на объект класса Foo(Foo&). Такая реализация метода позволяет нам писать код, подобный этому:
obj.set(2).set(8);Это возможно, поскольку первый вызов метода set возвращает указатель на объект obj. Второй метод вызывается на объекте obj, т. е. можно переписать код так:
obj = obj.set(2);
obj = obj.set(8);11 654
+4
Senior-разработчик создал крутейший канал про SQL
Благодаря простым картинкам даже новичок научится разрабатывать приложения с использованием баз данных.
Присоединяйтесь: @SQL
11 654
this является const указателем
Указатель this является неизменяемым указателем. Убедимся это на примере:
class Foo {
private:
int x;
public:
Foo(int x = 0) { this->x = x; }
void change(Foo *foo) { this = foo; }
void print() { cout << x << endl; }
};
Здесь в методе change мы пытаемся присвоить указателю this новое значение.
Попробуем вызвать метод change в методе main:
Foo obj (3);
Foo *ptr;
obj.change(ptr);
obj.print();
Если мы запустим код, то получим ошибку компиляции в методе change (lvalue required as left operand of assignment). Компилятор не позволяет нам изменить значение указателя this.11 654
➡️ Использование библиотеки NanoRange для работы с диапазонами в стиле C++20
NanoRange приносит функциональность диапазонов (Ranges) из C++20 в более ранние версии стандарта C++.
Она позволяет использовать удобные и гибкие инструменты для работы с последовательностями, такими как фильтрация, трансформация и ленивые вычисления, что делает код более чистым и выразительным.
• NanoRange идеально подходит для проектов, работающих на стандартах C++11, C++14 или C++17, но желающих использовать преимущества std::ranges.
🔗 Ссылочка на доку11 654
Хотите узнать, как превратить массив в пирамиду и ускорить сортировку данных?
Ждем вас на бесплатном вебинаре 14 октября в 20:00 мск, где мы разберем:
- как реализовать алгоритм сортировки выбором с линейной сложностью;
- как превратить массив в пирамиду (кучу) для быстрого доступа к максимальному элементу;
- как создать алгоритм пирамидальной сортировки с квазилинейной сложностью — О(N log N);
- визуальные примеры работы алгоритма на конкретных числах.
🚀 Спикер Евгений Волосатов — программист баз данных и преподаватель с огромным и разнообразным опытом, автор статей и учебных программ по C#, Java, PHP.
Встречаемся в преддверии старта курса «Алгоритмы и структуры данных». Все участники вебинара получат специальную цену на обучение!
Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://vk.cc/cCdPhD
Реклама. ООО «Отус онлайн-образование», ОГРН 117774661857611 654
➡️ Использование
std::expected для обработки ошибок без исключений
std::expected — это новый шаблонный класс, добавленный в C++23, который предоставляет способ возвращать либо ожидаемое значение, либо информацию об ошибке. Он позволяет более эффективно обрабатывать ошибки без использования исключений, делая код более чистым и понятным.
• std::expected полезен, когда нужно явно работать с ошибками, избегая накладных расходов и сложностей, связанных с исключениями.11 654
11 654
➡️ Библиотека Cpprestsdk
Cpprestsdk (C++ REST SDK) — это библиотека для создания кроссплатформенных приложений, которые работают с RESTful веб-сервисами. Она предоставляет удобные классы для работы с HTTP-запросами, веб-сокетами и JSON в C++.
• Если вам нужно взаимодействовать с веб-сервисами или создать клиент-серверное приложение, Cpprestsdk — отличный выбор для упрощения работы с сетью.
🔗 Ссылочка на доку11 654
#Вопросы_с_собеседования
Что выведет код сверху?
Ответ:
10
Объяснение:
Подобно struct и class, union может иметь методы. Подобно struct и в отличие от class, члены union по умолчанию являются общедоступными.
Поскольку данные-члены объединения совместно используют память, значение b становится таким же, как a.
11 654
1. С чем предстоит работать:
Эмулирование зрителей на стримерские платформы с различной защитой(ютуб, твич, кик и подобные)
Опыт работы с сессиями, прокси, куками, обхода антифрода и клоудфлеера, токенами, апи социальных сетей, снифом приветствуется. Делаем на запросах.
2. На каком языке программирования будет основная часть работы:
Языки: Python | Node.js | C++ | С# уровня Middle или с опытом работы в накрутке
3. На какие сроки вам нужен исполнитель:
1-12 месяцев
4. Сколько готовы выплачивать исполнителю за работу:
От 500 до 5000$ за каждую площадку
Контакты:
Пишите в тг @TiKey_K
11 654
Перегрузка операторов
Ключевое слово operator позволяет изменить работу конкретного оператора с экземплярами класса. Это дает оператору дополнительное значение — "перегружает" его. Компилятор различает разные значения оператора, проверяя типы его операндов.
В примере оператор + перегружается для сложения двух комплексных чисел.
