Chce stworzyć strukturę która jest parą uporządkowanych liczb. Które z tych rozwiązań powinno zostać użyte i dlaczego? A może jeszcze jakieś inne?
template<typename T>
struct Point
{
T x, y;
//pierwsze
Point operator + (Point point)
{
return { x + point.x, y + point.y };
}
//drugie
Point operator + (Point point) const
{
return { x + point.x, y + point.y };
}
//trzecie
inline Point operator + (Point point)
{
return { x + point.x, y + point.y };
}
//czwarte
inline Point operator + (Point point) const
{
return { x + point.x, y + point.y };
}
};
Zauważyłem też że można "inline" dodać przed "Point" i po "Point", czym to się różni?
Jeszcze mogę w argumentach operatora wpisać (Point& point), powinienem to zrobić?