В этой программе литералы 1 и 2 являются операндами оператора plus (+), который выдает на выходе значение 3. Это выходное значение затем выводится на консоль. В C++ выходное значение операции часто называют возвращаемым значением.
Скорее всего, вы уже знакомы со стандартными арифметическими операторами, которые часто используются в математике, включая сложение (+), вычитание (-), умножение (*) и деление (/). В C++ присвоение (=) также является оператором, как и вставка (<<), извлечение (>>) и равенство (==). Большинство операторов обозначаются символами (например, + или ==), но есть и ряд операторов, которые являются ключевыми словами (например, new, delete и throw).
Примечание автора
По причинам, которые станут понятны при более подробном рассмотрении операторов, для операторов, которые являются символами, принято добавлять символ оператора к слову operator. Например, оператор плюса будет записываться operator+, а оператор извлечения - operator>>.
Количество операндов, которые оператор принимает в качестве входных данных, называется arity (арностью) оператора. Мало кто знает, что означает это слово, поэтому не стоит бросать его в разговоре и ожидать, что кто-то поймет, о чем вы говорите. Операторы в C++ бывают четырех различных типов:
Унарные операторы действуют на один операнд. Примером унарного оператора является оператор -. Например, при значении -5 оператор - принимает литеральный операнд 5 и меняет его знак, чтобы получить новое выходное значение -5.
Бинарные операторы действуют над двумя операндами (их часто называют левым и правым, так как левый операнд появляется слева от оператора, а правый - справа от него). Примером бинарного оператора является оператор +. Например, если дано 3 + 4, оператор + принимает левый операнд 3 и правый операнд 4 и применяет математическое сложение для получения нового выходного значения 7. Операторы вставки (<<) и извлечения (>>) - это бинарные операторы, принимающие std::cout или std::cin в левой части и значение для вывода или переменную для ввода в правой части.
Тернарные операторы действуют на три операнда. В C++ есть только один из них (условный оператор), который мы рассмотрим позже.
Нулевые операторы действуют на нулевые операнды. В C++ есть только один такой оператор (оператор throw), который мы также рассмотрим позже.
Обратите внимание, что некоторые операторы имеют более одного значения в зависимости от того, как они используются. Например, оператор - имеет два контекста. Он может использоваться в унарной форме для инвертирования знака числа (например, для преобразования 5 в -5, или наоборот), или в двоичной форме для вычитания (например, 4 - 3).