Не попадитесь на накрученные каналы! Узнайте, не накручивает ли канал просмотры или подписчиков Проверить канал на накрутку
Прикрепить Телеграм-аккаунт Прикрепить Телеграм-аккаунт

Телеграм канал «Библиотека задач по C++ | тесты, код, задания»

Библиотека задач по C++ | тесты, код, задания
2.1K
1.9K
902
218
1.2K
Задачи и тесты по C++ для тренировки и обучения.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/7a480301

Для обратной связи: @proglibrary_feeedback_bot
Подписчики
Всего
5 421
Сегодня
-2
Просмотров на пост
Всего
292
ER
Общий
5.37%
Суточный
4.48%
Динамика публикаций
Telemetr - сервис глубокой аналитики
телеграм-каналов
Получите подробную информацию о каждом канале
Отберите самые эффективные каналы для
рекламных размещений, по приросту подписчиков,
ER, количеству просмотров на пост и другим метрикам
Анализируйте рекламные посты
и креативы
Узнайте какие посты лучше сработали,
а какие хуже, даже если их давно удалили
Оценивайте эффективность тематики и контента
Узнайте, какую тематику лучше не рекламировать
на канале, а какая зайдет на ура
Попробовать бесплатно
Показано 7 из 2 075 постов
Смотреть все посты
Пост от 26.10.2026 12:02
89
0
0
Какой конструктор вызовет std::move для const-объекта?

C++20. Что выведет программа?

#include <iostream>
#include <utility>

struct Item {
Item() = default;
Item(const Item&) {
std::cout << "copy";
}
Item(Item&&) {
std::cout << "move";
}
};

int main() {
const Item source;
Item target = std::move(source);
}

👾 — move
👍 — Ошибка компиляции
🥰 — copy
⚡️ — Ничего: сработает устранение копирования

Ответ: 🥰 — copy.

std::move не снимает const: здесь результат имеет тип const Item&&. Его нельзя передать конструктору Item(Item&&), зато конструктор Item(const Item&) подходит. Поэтому создаётся копия. Сам std::move не выполняет перемещение.

Правило в проекте стандарта C++

Библиотека задач по C++
🥰 1
Пост от 25.10.2026 20:30
58
0
0
📌 Один курс — хорошее вложение в себя. Два по той же цене — ещё лучше.

В Proglib Academy действует акция: покупаешь один курс, а второй получаешь в подарок.

Например, можно совместить два направления по работе с ИИ:

💥 ИИ для разработчиков — применение нейросетей в повседневной разработке: работа с кодом, тестирование и ревью.

💥 Разработка ИИ-агентов — архитектура агентов и создание собственных AI-решений.

📍 Разница в цене — почти 50 тысяч рублей. Можно освоить больше, не выходя за рамки запланированного бюджета.

А если тебе интереснее Python, алгоритмы, backend или DevOps — выбирай другую пару курсов из каталога.

Акция действует до 31 октября включительно ⏳

⏮️ Пора прокачать свой стек
Пост от 25.10.2026 12:03
97
0
0
Изменится ли размер map после чтения отсутствующего ключа?

C++20. Что выведет программа?

#include <iostream>
#include <map>
#include <string>

int main() {
std::map<std::string, int> counts;

int value = counts["go"];

std::cout << value << ' '
<< counts.size();
}

👾 — 0 0
👍 — 0 1
🥰 — std::out_of_range
⚡️ — Ошибка компиляции

Ответ: 👍 — 0 1.

Если ключ отсутствует, operator[] вставляет новый элемент. Для int со стандартным аллокатором значение инициализируется нулём. Поэтому value равен 0, а в map теперь один элемент. Для поиска без вставки можно использовать find; at для отсутствующего ключа выбросил бы исключение.

Правило в проекте стандарта C++

Библиотека задач по C++
Пост от 24.10.2026 12:01
65
0
0
Разделяют ли копии mutable-лямбды один счётчик?

C++20. Что выведет программа?

#include <iostream>

int main() {
auto next = [n = 0]() mutable {
return ++n;
};
auto copy = next;

std::cout << next() << ' ';
std::cout << next() << ' ';
std::cout << copy();
}

👾 — 1 2 3
👍 — 1 1 1
🥰 — Ошибка компиляции
⚡️ — 1 2 1

Ответ: ⚡️ — 1 2 1.

Захваченный по значению n хранится внутри объекта лямбды. При копировании next создаётся другой объект со своим n, пока равным нулю. mutable разрешает менять этот внутренний счётчик, но не объединяет состояние копий.

Правило в проекте стандарта C++

Библиотека задач по C++
⚡ 1
Пост от 23.10.2026 12:04
93
0
1
Какое значение по умолчанию получит виртуальный метод?

C++20. Что выведет программа?

#include <iostream>

struct Base {
virtual void show(int n = 1) {
std::cout << "Base " << n;
}
};

struct Derived : Base {
void show(int n = 2) override {
std::cout << "Derived " << n;
}
};

int main() {
Derived object;
Base& ref = object;
ref.show();
}

👾 — Derived 1
👍 — Derived 2
🥰 — Base 1
⚡️ — Ошибка компиляции

Ответ: 👾 — Derived 1.

Виртуальный вызов выбирает реализацию Derived::show. Но аргумент по умолчанию берётся из объявления, доступного через статический тип ref — Base&. Поэтому вызывается Derived::show(1).

Правило в проекте стандарта C++

Библиотека задач по C++
👾 3
Пост от 22.10.2026 20:28
36
0
0
😎 Выбираешь один курс, второй получаешь бесплатно. Баг? Нет, акция!

До 31 октября в Proglib Academy можно выбрать два курса и заплатить только за один.

Например, можно совместить:

💥 ИИ для разработчиков — применение нейросетей в повседневной разработке: работа с кодом, тестирование и ревью.

💥 Разработка ИИ-агентов — архитектура агентов и создание собственных AI-решений.


Вместе курсы стоят 108 000 ₽, но по акции оба обойдутся в 59 000 ₽. Экономия — 49 000 ₽ 🔥

Интересуют Python и ИИ или алгоритмы и архитектура? Можно выбрать любые два курса из каталога.

Акция действует до 31 октября включительно ⏳

⏬ Собрать свой учебный билд
Пост от 22.10.2026 12:00
81
0
0
Что сохраняет auto при чтении элемента vector<bool>?

C++20. Что выведет программа?

#include <iostream>
#include <vector>

int main() {
std::vector<bool> flags{false};
bool snapshot = flags[0];
auto proxy = flags[0];

flags[0] = true;

std::cout << snapshot << ' '
<< static_cast<bool>(proxy);
}

👾 — 0 0
👍 — 1 1
🥰 — 0 1
⚡️ — Ошибка компиляции

Ответ: 🥰 — 0 1.

snapshot — отдельное значение bool. А auto выводит для proxy тип std::vector<bool>::reference: это объект-посредник, связанный с битом вектора. После изменения flags[0] преобразование proxy в bool даёт true. Вектор не менял размер, поэтому proxy остаётся действительным.

Правило в проекте стандарта C++

Библиотека задач по C++
Смотреть все посты