po prostu program się wyłącza tak samo jak w przypadku mojego kodu :/
- 1
- 2

- Rejestracja:ponad 16 lat
- Ostatnio:ponad 8 lat
int main() {
Panelclass p;
string a = "Eclass", b = "bejb";
p.addObject(a, b);
std::cerr << "found index: " << p.searchObject(b, a) << "\n";
p.modifyObject(b, "pupa", a);
std::cerr << "found index: " << p.searchObject(b, a);
std::cerr << "\nKK";
}
int Panelclass:: searchObject(string name,string className) //szuka obiekt po nazwie i zwraca jego index w classList
{
for(int i=0;i<classList.size();i++)
{
if(classList[i]->getName()==name&&classList[i]->getClassname()==className)
{
std::cerr << "\nIn: " << __PRETTY_FUNCTION__ << "\n" << classList[i]->getString() << "\n";
return i;
}
}
return -1;
}
Zmień te części - skompiluj i uruchom program. Wklej co wypisał na ekran. U mnie:
In: int Panelclass::searchObject(std::__cxx11::string, std::__cxx11::string)
nazwa klasy: Eclass nazwa: bejb info: brak informacji
found index: 0
In: int Panelclass::searchObject(std::__cxx11::string, std::__cxx11::string)
nazwa klasy: Eclass nazwa: bejb info: brak informacji
In: int Panelclass::searchObject(std::__cxx11::string, std::__cxx11::string)
nazwa klasy: Eclass nazwa: bejb info: pupa
found index: 0
KK

- Rejestracja:ponad 16 lat
- Ostatnio:ponad 8 lat
Win+R, wpisz cmd
, otworzy Ci się terminal.
Znajdz katalog, w którym masz swój projekt. Czyli jeśli jest to e:\projekty\mojprojekt
- wpisz e:
, klepnij Enter, wpisz cd e:\projekty\mojprojekt\bin\debug
. Enter. Potem wpisz nazwę swojego programu (wpisz dir
, żeby zobaczyć co tam masz).
W ten sposób zobaczysz co poszło na ekran zanim się program posypie, bo Ci terminal nie zginie.
A jeszcze lepiej - skorzystaj z debuggera. C::B ma przecież zintegrowaną obsługę - na początku programu postaw breakpoint i jazda. ;)
- Rejestracja:ponad 8 lat
- Ostatnio:ponad 8 lat
- Postów:23
oki skorzystałem z debuggera i otrzymałem takie coś :
dodatkowo był komunikat segmentation fault
- bc04add001.png (35 KB) - ściągnięć: 72
- Rejestracja:ponad 8 lat
- Ostatnio:ponad 8 lat
- Postów:23
Robiąc tak doszedłem że w metodzie obiektu getName() wyrzuca błąd w linijce z kodem return this->name
- 3c18d448d9.png (42 KB) - ściągnięć: 84
- 1
- 2
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.