Вирази і операції
Вислови є безліч даних пов'язаних між собою операціями - особливими операторами мови, які повертають деяке значення. Аргументи операцій називають операндами. Більшість операцій або унарні (з одним операндом) або бінарні (з двома операндами). Також операції характеризуються пріоритетом (старшинством) виконання в вираженні. Наприклад, результат виразу 4 + 5 * 2 буде 14, а не 18, так як операція множення має більший пріоритет, ніж складання. Операції однакового пріоритету виконуються послідовно зліва направо.
унарні арифметичні операції
- ++ - інкремент, збільшує значення цілочисельний змінної на 1;
- -- - декремент, зменшує значення цілочисельний змінної на 1;
- + - залишає знак числа;
- - - змінює знак числа.
Існують два варіанти операції інкремента і декремента. Префіксний варіант (операнд справа) змінює операнд відразу, постфіксний варіант (операнд зліва) змінює операнд після обчислення всього висловлювання, в яке входить операнд.
Бінарні арифметичні операції
- + - складання чисел або рядків;
- - - віднімання чисел;
- * - множення чисел;
- / - ділення чисел;
- % - обчислення залишку від ділення чисел.
операції відносини
логічні операції
побітові операції
Дані операції виконуються над цілочисельними типами.
- побітовое інвертування;операції з пам'яттю
доступу до членів класу
- . - доступ до члена класу;
- -> - доступ до члена класу за вказівником;
- .* - доступ до покажчика на член класу;
- -> * - доступк вказівником на член класу за вказівником.
перетворення типів
- () - перетворення типів (старий стиль);
- const_cast - змінює атрибут const у об'єкта;
- dynamic_cast - динамічне перетворення;
- reinterpret_cast - перетворення типу покажчика;
- static_cast - звичайне перетворення.
операції присвоєння
- = - привласнює лівому операнду значення правого операнда;
- op = - виконує операцію op над операндами і зберігає результат в лівому операнде.
інші операції
- () - виклик функції;
- , - кома, дозволяє обчислити послідовно кілька виразів (наприклад, зручно використовувати в циклі for);
- :: - операція розширення видимості;
- . - умовна операція;
- sizeof - визначає розмір операнда;
- typeof - визначає тип операнда;
- typeid - повертає інформацію про тип.
Для деяких операцій в stl визначені буквені еквіваленти:
and, bitand, compl, not_eq, or_eq, xor_eq, and_eq, bitor, not, or, xor.