po prostu program się wyłącza tak samo jak w przypadku mojego kodu :/
zwracanie wartości
- Rejestracja: dni
- Ostatnio: dni
Tak, tego się domyśliłem, ale wklej co wypluł na ekran - bo coś pewnie wypluł?
- Rejestracja: dni
- Ostatnio: dni
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: dni
- Ostatnio: dni
W jaki sposób uruchamiasz program? (Terminal zniknął czy został?)
- Rejestracja: dni
- Ostatnio: dni
- Postów: 23
odpalam przez kompiluj projekt w codeblocks i wyskakuje napis program przestał działać
- Rejestracja: dni
- Ostatnio: dni
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: dni
- Ostatnio: dni
- Postów: 23
oki skorzystałem z debuggera i otrzymałem takie coś :

dodatkowo był komunikat segmentation fault
- Rejestracja: dni
- Ostatnio: dni
Teraz ustaw sobie breakpoint na początek metody searchObject, debuguj i przechodź krok po kroku aż Ci się wysypie. Będziesz wiedział w jakiej linijce.
- Rejestracja: dni
- Ostatnio: dni
- Postów: 23
Robiąc tak doszedłem że w metodzie obiektu getName() wyrzuca błąd w linijce z kodem return this->name

- Rejestracja: dni
- Ostatnio: dni
- Poprawiłeś te warningi?
- Jaką wartość ma
thisithis->namewg debuggera przed crashem? - Odnośnie powyższego: jaką wartość ma
iiclassList[i]?