#ifndef _POINT_2011_H_

#define _POINT_2011_H_



class Point {

 public:

  Point(const int x, const int y);  // constructor



  // disable copy constructor and assignment operator by specifying

  // them as deleted functions (new in C++ 2011)

  Point(const Point &copyme) = delete;

  Point &operator=(const Point &rhs) = delete;



  int get_x() const { return x_; }  // inline member function

  int get_y() const { return y_; }  // inline member function



  void CopyFrom(const Point &copy_from_me);    // update self

  double Distance(const Point &p) const;

  void SetLocation(const int x, const int y);



 private:

  int x_;  // data member

  int y_;  // data member

};  // class Point



#endif  // _POINT_2011_H_