dostępem do kontenera w klasie

dostępem do kontenera w klasie
A8
  • Rejestracja:ponad 15 lat
  • Ostatnio:ponad 6 lat
0

Witam.

Mam problem z dostępem do kontenera, który jest składnikiem pewnej klasy poza tą klasą. Obiekty wywoływane są dokładnie tak (pseudo kod):

Kopiuj
jakaśFunkcjaZwracajacaWskaźnikTypBazowy() {
	KonstrultorPochodnyPochodnego(){
		KonstruktorPochodny():KonstruktorBazowy(){

		wskaźnik = KonstruktorPochodnyZupełnieInnejKlasy():KonstruktorBazowyZupełnieInnejKlasy();
		Kontener.pushback(wskaźnik);
		[1]
		}
	}
}
//wywołanie konstruktora bazowego zupełnie innej klasy:
KonstruktorBazowyZupełnieInnejKlasy(){
	KontenerBazowy.append();
	//czyli kontener zawiera coś, jest to widoczne poprzez pobranie ilości elementów w miejscu oznaczonym "[1]"
}

//deklaracja wskaźnika "ZupełnieInnejKlasyBazowej"
1.ZupełnieInnaKlasaBazowa *wsk;
2.ZupełnieInnaKlasaBazowa=wskaźnikTypBazowy->getWskaźnikDoObiektuPochodnegoZupełnieInnejKlasyZ"Kontener"();

wsk->pobierzRozmiarKonteneraZZupełnieInnejKlasyBazowej(); [2]

 

Linijki od 1-2 wykonuje poza funkcją, która zwraca wskaźnik wymieniony wyżej.

W miejscu oznaczonym [2] mam SEGMENTATION_FAULT mimo iż kontener posiada jakieś elementy. Czy ktoś może wyjaśnić dlaczego tak się dzieje ?

dzięki :)

Shalom
  • Rejestracja:około 21 lat
  • Ostatnio:około 3 lata
  • Lokalizacja:Space: the final frontier
  • Postów:26433
0

Napisz ten kod jeszcze raz. Tym razem z sensem. To co tu wstawiłeś to jest OMG WTF. Co to niby jest

Kopiuj
jakaśFunkcjaZwracajacaWskaźnikTypBazowy() {
        KonstrultorPochodnyPochodnego(){
                KonstruktorPochodny():KonstruktorBazowy(){
 
                wskaźnik = KonstruktorPochodnyZupełnieInnejKlasy():KonstruktorBazowyZupełnieInnejKlasy();
                Kontener.pushback(wskaźnik);
                [1]
                }
        }
}

Definicja funkcji wewnątrz definicji funkcji wewnątrz definicji funcji? Incepcja jakaś?
Poza tym co to jest kontruktor bazowy? Konstruktor klasy bazowej? I wołasz go na pałę ręcznie? o_O

Błąd który widzisz zapewne polega na tym że twoje "wsk" nie jest poprawnie ustawione. Ale to co tu pokazałes wskazuje na to, że błąd to ty czas projektowy i to dość spory...


"Nie brookliński most, ale przemienić w jasny, nowy dzień najsmutniejszą noc - to jest dopiero coś!"
edytowany 1x, ostatnio: Shalom
Ola Nordmann
Incepcja dobry film :)
Patryk27
Incepcja jakaś? zasadniczo, to "incepcja" oznacza zaszczepianie idei w umyśle :P Takie przesadne zagnieżdżanie funkcji to bardziej yo dawg ;)
GA
  • Rejestracja:ponad 19 lat
  • Ostatnio:ponad 11 lat
0

nie wiem jak to wołasz do końca, ale problem możesz mieć w braku wirtualnych funkcji. I zgadzam się z poprzednikiem, to nie jest w żadnym wypadku 'pseudo kod'.


Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.