Динамический массив структур

С помощью операции new можно создать динамический массив структур:

struct Point {

float x, y;

};

int n; cin>>n; Point * uk = new Point [n];

Переменной-указателю uk присваивается адрес начала массива структур. Доступ к полям i -й структуры осуществляется следующим образом:

for(int i = 0; i < n; i++){ //Ввод координат n точек

in>>uk->x>>uk->y; uk++; // или cin>>uk[i].x >>uk[i].y;

}

Ссылка на структуру

Для структур, как и для простых переменных, можно использовать ссылочный тип. Например:

Point pp; Point & spp = pp;

После такого объявления spp и pp – это два синонимa одной и той же переменной структурного типа Point (структурный тип Point определён выше). Поэтому если изменить поле x или y структуры pp, то изменится соответствующее поле структуры spp.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: