Когнитивные искажения или ошибки мышления: что это и как влияют на принятие решений
Рассказываем о когнитивных искажениях на примерах и предлагаем способы преодолеть ошибочные установки
На C++ пишут сервисы для промышленных предприятий, движки браузеров и игр, базы данных, роботов, графические редакторы и многое другое. Этот язык программирования позволяет точно управлять памятью и временем работы кода. Поэтому его ценят в финтехе, телекоммуникациях, гейминге, медтехе и на производствах — там, где нужен быстрый отклик и высокая производительность.
Язык живой и развивается: стандарты C++11/14/17/20/23 добавили многопоточность, умные указатели, диапазоны, концепции. Это упрощает жизнь разработчикам и снижает риск ошибок. О том, как изучать и где применять С++ — в статье.
Создатель C++ Бьерн Страуструп хотел сохранить эффективность языка C и добавить более удобные способы построения крупных программ. Так C++ унаследовал базу предшественника — языка C — и включил новые идеи.
С++ совместил два свойства.
Эти свойства упрощают изучение логики С++. Можно начать с простых функций, а позже собрать из объектов архитектуру. Язык подходит и для небольших утилит, и для сложных систем.
Главное отличие — максимальный контроль над ресурсами.
Все это делает C++ выбором для систем, где лишняя миллисекунда — это деньги или безопасность.
Разработчики обращаются к C++, когда нужна и скорость, и удобные средства организации кода.
Типичные области C++:
Синтаксис — это набор правил для написания кода. Разберем элементы, которые есть в каждой программе, на примере фрагмента:

Директивы препроцессора #include. Подключают готовые библиотеки кода. Например:
#include <iostream>
#include <string>
Первая строка подключает заголовочный файл, чтобы работать с вводом и выводом. Вторая дает возможность использовать строки.
Функция. Это именованный блок кода, который совершает работу: принимает данные, считает, проверяет по условиям, отдает результат. Пример:
int sum_to(int n) {
int s = 0;
for (int i = 1; i <= n; i++) {
s = s + i;
}
return s;
}
Прочитаем код и разберем по строкам. Функция sum_to считает сумму чисел от 1 до n. Например, если n = 5, она вернет 1+2+3+4+5 = 15. По порядку:
int sum_to(int n) {
Мы объявляем функцию с именем sum_to
int слева — это тип результата. Значит, функция вернет целое число. В круглых скобках — входные данные: одно целое число n.
int s = 0;
Создаем переменную s. В нее будем складывать сумму. Сначала в ней ноль.
for (int i = 1; i <= n; i++) {
Запускаем цикл — повторение одних и тех же действий. Здесь три части:
int i = 1 — начинаем с числа 1.
i <= n — повторяем, пока i не больше n.
i++ — после каждого круга увеличиваем i на 1: 1, 2, 3, …, n.
s = s + i;
На каждом круге прибавляем текущее i к сумме s.
Было s, стало s + i. Так копится общая сумма.
}
Конец цикла. К этому моменту s хранит 1 + 2 + … + n.
return s;
Возвращаем готовый ответ из функции.
}
Конец функции.
Точка входа main. С этого места начинается работа программы. Число, которое возвращает main, — код завершения. 0 означает, что программа выполнена успешно. Пример:
int main() {
// ваш код
return 0;
}
Пространство имен std::. В C++ имена сгруппированы в отдельные пространства, чтобы не было путаницы во время выполнения кода. Пример:
std::cout << "Текст\n";
std::cin >> n;
Первая строка будет выводить текст на устройство, вторая — читать одно слово или число.
Тип говорит, какие значения хранит переменная и что с ними можно делать.

Строительные блоки выражений.
Это условия: if — если, else — то / иначе, которые позволяют проверять данные на предмет соответствия заданным правилам. Пример:
if (n < 0) {
std::cout << "Ошибка\n";
} else {
std::cout << "Ок\n";
}
Циклы for и while позволяют повторять действие, пока не получится нужный результат.
for (int i = 1; i <= n; i++)
Здесь к числу i будет прибавляться единица каждый круг проверки. Пока число i не превысит число n, цикл будет работать.
Это только несколько типов элементов. Чтобы писать на С++, важно знать еще многое: от констант и области видимости до объектов. Синтаксис языка С++ во многом совпадает с базой, поэтому опыт работы с C значительно упрощает изучение C++.
Обязательный набор инструментов.
План на первые 10–12 недель:
Языку С++ учат в онлайн-кампусе НИУ ВШЭ. Например, на программе «Проектирование и разработка высоконагруженных информационных систем» разработке на С++ уделено несколько модулей. Интенсивное практико-ориентированное обучение поможет вам стать профессионалом и создавать цифровые продукты любой сложности. Занятия проходят в будни вечером и по субботам, записи сохраняются. По итогу обучения вы получите диплом государственного образца с приложением на английском языке.
Если пока не готовы к полноценному обучению, начните знакомиться с материалами в открытых источниках. Подпишитесь на полезный контент, в котором эксперты рассказывают о методах и инструментах работы с кодом. У Вышки Онлайн есть плейлист «IT и искусственный интеллект» в рубрике «+/-10 минут». Он поможет освоить принципы программирования и научиться использовать разные инструменты.
Чтобы нарабатывать первые навыки программирования, регулярно решайте задачи. Пользуйтесь онлайн-тренажерами Exercism, Codewars и подобными.
Эти элементы — базовый набор языка программирования С++. Их хватает, чтобы написать простые программы: калькулятор, алгоритм обработки текста. Когда это станет привычным, переходите к более сложным темам
Рассказываем о когнитивных искажениях на примерах и предлагаем способы преодолеть ошибочные установки
Рассказываем, как пошагово проверять гипотезы и принимать бизнес-решения на основе объективного анализа
Рассказываем, как организовать мозговой штурм, чтобы собрать рабочие идеи для проекта