Witam.
Mam stworzoną klasę z danymi typu double i w niej konstruktor domyślny oraz konstruktor z argumentami przechowującymi wartości dla inicjalizacji tych double pól. Ponadto mam zadeklarowaną globalnie tablicę wskaźników do obiektów tej klasy.
Muszę napisać funkcję, która stworzy nowy obiekt dynamiczny poprzedzone uzyskaniem od użytkownika
wartości wszystkich atrybutów dla tego obiektu, a następnie doda jego adresu do
tablicy wskaźników.
Nie wiem jak wywołać konstruktor w definicji funkcji tak, aby zmienił obiekt wskazywany przez konkretny wskaźnik z tablicy. Ktoś wie?
Klasa (fragment):
class zaglowka {
protected:
double rozmiar;
double l_pas;
double wek_x;
double wek_y;
public:
friend void pob_dane(void);
friend void wyswietl(void);
friend void skala(double k);
friend void przesuniecie(double x, double y);
zaglowka();
zaglowka(double a, double b, double c, double d);
Konstruktor (nie domyślny):
zaglowka::zaglowka(double a, double b, double c, double d) {
rozmiar = a;
l_pas = b;
wek_x = c;
wek_y = d;
};
Tablica wskaźników:
zaglowka * wsk[3];
Funkcja:
void utworz(void)
{
double rozm_temp;
double l_pas_temp;
double wek_x_temp;
double wek_y_temp;
printf("Podaj rozmiar zaglowki: ");
scanf("%lf", &rozm_temp);
printf("Podaj liczbe pasazerow zaglowki: ");
scanf("%lf", &l_pas_temp);
printf("Podaj wektor x zaglowki: ");
scanf("%lf", &wek_x_temp);
printf("Podaj wektor y zaglowki: ");
scanf("%lf", &wek_y_temp);
wsk[0] = new zaglowka;
zaglowka(rozm_temp, l_pas_temp, wek_x_temp, wek_y_temp);
}
Chcę żeby ten konstruktor wywołało właśnie dla wsk[0].