#include <cstdio>
struct pnt
{
int x, y;
pnt() { } // Используется, чтобы создать "q, c"
pnt( int a, int b ) { x = a, y = b; } // Используется для инициализации p, q, в (operator +)
}; // Не забывайте про ";" !
// Определяем (operator +)
pnt operator + ( pnt a, pnt b )
{
return pnt(a.x + b.x, a.y + b.y);
}
// Определяем (operator <)
bool operator < ( pnt a, pnt b )
{
if (a.x != b.x)
return a.x < b.x;
return a.y < b.y;
}
int main()
{
pnt q, c;
pnt p(1, 2); // Точку можно создавать так
q = pnt(3, 4); // А можно так
c = p + q; // Применяем (operator +)
printf("%d %d\n", c.x, c.y);
return 0;
}