Le variabili k e y sono "dentro" all'oggetto X
Puoi usarle solo cosi:
Serial.printl(X.k);
Quindi classe X che dentro ha k e y (ma non esistono ancora).
Se tu dichiari due oggetti di tipo X (non dargli lo stesso nome!!!) all'inizio del programma, prima di setup()
X obj1();
X obj2();
Allora esistono "dentro" a obj1 e obj2 due coppie di variabili k e y.
Capisci che non puoi riferirti a k o y perchè sarebbe ambiguo
Puoi invece riferirti (si usa il punto) a obj1.k obj1.y e poi a obj2.k e obj2.y
Spero che questo possa chiarirti le spiegazioni precedenti, che forse ti hanno un pò confuso.
Potrai anche chiamare la funzione ok() per aumentare i valori di k e y ma le coppie contenute nel obj giusto.
obj1.ok();
aumenta le k e y contenute in obj1. Quelle di obj rimangono a 0