Aktywne Wpisy

Greensy +85
Rozwiązanie na problemy tego świata
źródło: 1000069482
Pobierz#igrzyskabebzonow v6
niestety mam malo czasu pisac podsumowania, ale postaram sie takie zbiorcze z tygiodnia 4 i 5
w skrocie - jest zle
grubasy sa leniwe, tluste i glupie
serio
niestety mam malo czasu pisac podsumowania, ale postaram sie takie zbiorcze z tygiodnia 4 i 5
w skrocie - jest zle
grubasy sa leniwe, tluste i glupie
serio





Błąd jak na obrazku, plik na pastebin... nie wiem co robię nie tak. ;c
QList::indexOfprzyjmujeconst T&za argument, dlaczego więc nie przechodzi to co próbuję mu podać? ( ͡° ʖ̯ ͡°)źródło: comment_lfeg2jNK03ewm8QixCmUogxIcaY2Akur.jpg
PobierzQList::indexOf(this)daje ten sam błąd.metoda index() jest const?
@DK13: wiesz, skoro i tak zapisuję do
InnerClass const*const ptrwięc to tak naprawdę bez różnicy co tam wcześniej robiłem, kompilator nie powinien marudzić na tak późnym etapie jakim jest indexOf, a właśnie wcześniej. Ale przetestowałem, efekt ten sam i masz rację, ten cast jest zupełnie niepotrzebny.for (int i = 0; parent->list().length(); ++i) {i działa. :P Dzięki.if (parent->list().at(i) == this) {
return i;
}
}
return -1;
funkcja indexOf przyjmuje argument typu const &T gdzie T = InnerClass* czyli stałą referencję na wskaźnik.
A ty próbujesz tam przekazać wskaźnik do stałego elementu (bo funkcja index() jest typu const).
Zmiana zmiennej list na QList list; oraz odpowiednia modyfikacaj sygnatury funkcji list() powinna załatwić sprawę (być może to drugie wystarczy).
Niestety nie mam zestawionego środowiska do Qt więc nie mogłem przetestować,
QListgeneruje ten sam błąd,QListbyłoby bez sensu, a zresztą się chyba nawet nie da. indexOf() nie powinien potrzebować zmiennego elementu bo po co mu on? Ta funkcja tylko porównuje adresy pointerów w tym wypadku, nic więcej nie robi - i ja jej przekazuję stałą referencję do stałego elementu który jest wskaźnikiem i wskazuje na stały element (a przynajmniej chcę tak zrobić)... dlatego stały element nie powinien jejSpróbuj
A co ja mam ci poradzić na to.
Za dużo chcesz.
Oczywiście można to obejść. Zobacz czy poniższy kod zadowala cię:
http://pastebin.com/Ri8g6saq