Операторы в C и C++


Это список операторов в языках программирования C и C ++ . Все перечисленные операторы существуют в C++; столбец «Включено в C» указывает, присутствует ли оператор также в C. Обратите внимание, что C не поддерживает перегрузку операторов .

Если операторы &&, ||, и ,( оператор запятая ) не перегружены, после оценки первого операнда существует точка последовательности .

C++ также содержит операторы преобразования типовconst_cast , static_cast, dynamic_castи reinterpret_cast. Форматирование этих операторов означает, что их уровень приоритета не имеет значения.

Большинство операторов, доступных в C и C++, также доступны в других языках семейства C, таких как C# , D , Java , Perl и PHP , с тем же приоритетом, ассоциативностью и семантикой.

Для целей этих таблиц , a, bи cпредставляют допустимые значения (литералы, значения из переменных или возвращаемое значение), имена объектов или lvalue, в зависимости от ситуации. R, Sи Tобозначают любой тип(ы), а Kтакже тип класса или перечисляемый тип.

Все логические операторы существуют в C и C++ и могут быть перегружены в C++, хотя перегрузка логического И и логического ИЛИ не рекомендуется, потому что как перегруженные операторы они ведут себя как обычные вызовы функций, а это означает, что вычисляются оба их операнда, поэтому они теряют свое хорошо используемое и ожидаемое свойство оценки короткого замыкания . [1]


Приоритет и привязки