view interps/rail/src/Vec.h @ 12296:042127c1c142 draft

<fizzie> ` rm /hackenv/bin/bfi; ln -s /hackenv/lib/kps/bfi /hackenv/bin/bfi # no need for actual copies that you can forget to delete though
author HackEso <hackeso@esolangs.org>
date Sat, 04 Jan 2020 13:28:36 +0000
parents 859f9b4339e6
children
line wrap: on
line source

// Vec.h

#ifndef VEC_H_RAIL_1
#define VEC_H_RAIL_1

struct Vec
{
  Vec() : x(0), y(0) {}
  Vec(int newX, int newY) : x(newX), y(newY) {}

  Vec & operator+=(Vec right)
  {
    x += right.x;
    y += right.y;
    return *this;
  }

  Vec operator+(Vec right)
  {
    Vec result(*this);
    result += right;
    return result;
  }

  bool operator==(Vec const & right) const
  {
    return x == right.x && y == right.y;
  }

  int x;
  int y;
};

#endif