代码之家  ›  专栏  ›  技术社区  ›  Bojangles Vincent Baillet

C++中的变量减去?

  •  4
  • Bojangles Vincent Baillet  · 技术社区  · 15 年前

    我有个公式:

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

    我能简单地打字吗 (-I) 或者类似的东西,或者我必须倍增 I 比-1?

    2 回复  |  直到 12 年前
        1
  •  14
  •   James McNellis    15 年前

    C++具有执行否定的一元减法运算符。

    - x
    

    这就否定了 x ,就像 0 - x -1 * x 会否定 . 请注意 - 在里面 -1*x个 也是一元减号运算符。

        2
  •  1
  •   Eric    15 年前

    你在评论中提到:

    I 是一个方向向量

    如果在非本机类型上使用运算符,则 不能 假设它们是定义好的。这取决于是否在类上实现了运算符重载:如果 Vector Vector operator-() 成员函数

    而且,从数学上讲, (-I dot N) == -(I dot N) :)