[C++] Wskaźnik tablicy obiektów w klasach
Ostatnio zmodyfikowano 2014-11-12 18:20
Lukier Temat założony przez niniejszego użytkownika |
» 2014-11-12 12:27:28 Dzięki, ten problem z wskaźnikiem na tablice już ogarnąłem. Lecz natchnąłem się znowu na pewien problem. Otóż mam klasę: class srednieocen { private: string imie; string nazwisko; float srednie; public: srednieocen() { imie = "pusty"; nazwisko = "pusty"; srednie = 0.0; } void create( srednieocen **&, iloscuczniow * ); };
Do nie w funkcji main tworzę: srednieocen ** srednia; I za pomocą funkcji chcę zaalokować w niej pamięć: void srednieocen::create( srednieocen **& srednia, iloscuczniow * liczba ) { srednia = new srednieocen *[ liczba->ilosc ]; for( int i = 0; i < liczba->ilosc; i++ ) { srednia[ i ] = new srednieocen(); } } Mój problem polega z wywoływaniem funkcji takiego wskaźnika na tablice wskaźników, ze zwykłą "->" nie działa zaś gdy robię takie coś (*srednia)-> to program się zwiesza, zaś gdy ciało funkcji umieszczę w funkcji main to wszystko działa jak należy. |
|
Tomek_z_W11 |
» 2014-11-12 15:45:37 srednieocen **& srednia,
miałeś chyba na myśli przekazanie do funkcji wskaźnik na wskaźnik?
Tak to się robi: srednieocen ** srednia.
A tak z ciekawości zapytam, kompilator Ci sie nie skarży, że tutaj chce nawiasy okrągłe zamiast kwadratowych? srednia = new srednieocen *[ liczba->ilosc ]; |
|
michal11 |
» 2014-11-12 17:53:35 Usuń też nawiasy z drugiego new, przy wywoływaniu konstruktora bezargumentowego nie są potrzebne.
@up Dlaczego niby miałyby być tam nawiasy okrągłe ? |
|
Lukier Temat założony przez niniejszego użytkownika |
» 2014-11-12 18:20:25 Problem rozwiązany, nie skarżył się o nawiasy kwadratowe, dzięki wszystkim za pomoc. Pozdrawiam. |
|
1 « 2 » |