Ruby で使用できる単項演算子を調べてみた。
Ruby では +
, -
, ~
, !
が単項演算子と使用でき、さらに再定義することもできます。
[コード]
class X
def +@
p "+"
end
def -@
p "-"
end
def ~
p "~"
end
def !
p "!"
end
end
def ` str
p str
end
x = X.new
+x
-x
~x
!x
[出力]
"+"
"-"
"~"
"!"
Ruby では +
や -
は二項演算子も存在するので、再定義する場合のメソッド名は +@
や -@
とする必要があります。