/*
* Copyright ©2026 Soham Pardeshi. All rights reserved.
* Permission is hereby granted to students registered for University of
* Washington CSE 333 for use solely during Summer Quarter 2026 for
* purposes of the course. No other use, copying, distribution, or
* modification is permitted without prior written consent. Copyrights
* for third-party components of this work must be honored. Instructors
* interested in reusing these course materials should contact the author.
*/
#ifndef POINT_H_
#define POINT_H_
// A simple class: the interface lives in the .h, the definitions in the .cc.
// Data members are private (the object protects them); the outside world uses
// the public methods only.
class Point {
public:
Point(int x, int y); // constructor
int GetX() const { return x_; } // inline const getter
int GetY() const { return y_; } // inline const getter
double Distance(const Point& p) const; // does not modify *this -> const
void SetLocation(int x, int y); // modifies *this -> NOT const
private:
int x_; // data member
int y_; // data member
};
#endif // POINT_H_