Коротко об арности. Теоретическое

Что такое арность? Таким вопросом задются новички, которые начинают знакомитсья с перегрузкой операций.
Для того, чтобы понять, что такое арность, нужно научиться понимать, что такое операция.
  • Операция — это действие над значениями, разрешённое типам
На самом деле у меня прям чувство, что если я выражусь заведомо неверно, многие новички меня поймут лучше, чем если бы я выразился астрономически точно. Операция — это действие над типом или действие между типами. Но коли уж технически в С++ непосредственно к типам операции не применяются, то всё-таки это действия над значениями типов.
В С++ нельзя создавать свои операции, можно использовать только существующие.
    Во время перегрузки операций учитывают так называюму арность. Операции обычно разделяют на:

  • Унарные
  • Бинарные
  • Тернарную
И вот эти вот самые слова: "унарный", "бинарный", "тернарный" очень тяжело понимать некоторым новичкам. Я к таким новичкам сам отношусь: мне было очень сложно проникнуться арностью. На самом деле всё не так страшно и совсем не сложно.
  • Унарный — действие над
  • Бинарный — действие при слиянии
Унарный — это действие над одним значением. Примеры унарных упераций:
Показанный код отображает, что действие (операция) выполняется над одним значением: над x. Такого вида операции называют унарными. Это как приклейка операции к значению с левой или с правой стороны.

  • Унарной операции нужна только одна сущность
Бинарный — это действие при слиянии. В зависимости от способа слияния двух значений. Конечный результат зависит от способа слияния. Операция в данном случае обозначает вид слияния: сложение, вычитание, умножение, взятия остатка и др.
Показанный код отображает, что способ слияния (в зависимости от используемой операции) выполняется над двумя значениям. Например, чтобы сложить число 5 с чем-то, то должно быть то самое что-то. Я не могу сказать: "5 прибавь к себе" и не закончить, если хочу что-то к пятёрке той прибавить. Мне нужно обозначить, что я должен прибавить. Таким образом получается, что для операции нужно две составляющие. Нуждающиеся в двух составляющих операции и называют бинарными.
Тернарный — это по аналогии с бинарным. В С++ есть одна тернарная операция:
При перегрузке операций преимущественно используют унарную и бинарную операции, тернарную операцию перегрузить нельзя. Поэтому перед тем, как приступите к перегрузке операций, хорошо бы понять тему арности, хотя бы унарность и бинарность.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Поиск

 
     

Случайная книга в электронном формате

https://www.litres.ru/bill-fillips-7879021/programmirovanie-pod-android-16502000/?lfrom=15589587
Яндекс.Метрика