Tablica wskaźników polimorficznych (chyba)

0

Witam ,ostatnio mam problem z przekazaniem do funkcji takiej tablicy jako argumentu. Kod wygląda mniej więcej tak, oczywiście uproszczony dla pokazania jego "budowy":

glowna* wskaźnik;       //glowna- Klasa abstrakcyjna;
wskaźnik = new klasa_dziedzicząca_z_glowna[wielkosc_tablicy];

a dalej przypisuje jej jakieś wartości. Funkcja:

void funkcja(glowna* argument[])
{
    for (int c; c != wielkosc_tablicy; c++) {
        argument[c]->jakiś_tam_parametr;
    }
}

Wywołanie funkcji wygląda tak:

funkcja(&wskaźnik);

Problem leży w tym że wartości ma tylko argument[0] ,reszta ma losowe wartości z pamięci ram. Gdzie jest błąd?

1

Przekazujesz wskaźnik na wskaźnik, zamiast wskaźnika.

Powinno być:

void funkcja(glowna* argument)

Swoją drogą, korzystaj z RAII i rule of zero zamiast nagiego new/delete.

0

Wielkie dzięki. wszystko hasa że tak powiem

1 użytkowników online, w tym zalogowanych: 0, gości: 1