ciao allora se io ho

int array=new int[10];
array[2]=5; equivale a fare in c++ *(array+2)=5;

ma se invece di avere un int ad esempio ho una classe

class prova{
int x=0;
int y=0;
}

Prova array[]=new prova[10];// si creano 10 celle fatte come prova e l array va a puntare
alla prima

se poi voglio andare a modificare la x presente alla posizione [1]

array[1].x=9; mi da errore ma non capisco si no come fare....in questo modo faccio
*(array+1).x che è sbagliato perchè faccio array+1 e accedo

come dovrei fare????