Bye Bye Moore

猫マンション建築の野望を胸に零細事業主として資本主義の荒波に漕ぎ出したアラサー男の技術メモ

Structで構造体なデータを扱う

StructはRubyで構造体なクラスを扱うときに使えます。
使い方がちょいと特殊です。

class Point < Struct.new(:x, :y)
  def +(other_object)
    Point.new(x + other_object.x, y + other_object.y)
  end  
end  
=> :inspect

a = Point.new(1,3)
#=> #<struct Point x=1, y=3>

b = Point.new(5,11)
#=> #<struct Point x=5, y=11>

a + b
#=> #<struct Point x=6, y=14>

a.x
#=> 1

a.y
#=> 3

変数の代入もこの通り

a.x = 34
#=> 34

a
#=> #<struct Point x=34, y=3>

参考もと