Минус переменной в C ++? - PullRequest
       1

Минус переменной в C ++?

4 голосов
/ 15 ноября 2010

У меня есть это уравнение:

R= 2*(-I dot N)*N + I

Могу ли я просто набрать (-I) или что-то подобное, или мне нужно умножить I на -1?

Ответы [ 2 ]

14 голосов
/ 15 ноября 2010

C ++ имеет унарный оператор минус, который выполняет отрицание.

- x

Это отрицает x, так же как 0 - x или -1 * x отрицает x.Обратите внимание, что - в -1 * x также является унарным оператором минус.

1 голос
/ 08 декабря 2010

Вы упоминаете в своем комментарии, что:

I - вектор направления

Если вы используете операторы для неродных типов, вы не можете предположить, что они определены. Это зависит от того, была ли реализована перегрузка оператора в классе: если есть Vector Vector operator-() функция-член

Кроме того, математически говоря, (-I dot N) == -(I dot N):)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...