Wpis z mikrobloga

#programowanie #cpp #qt

Mam sobie taką funkcję i błędy jak na załączonym obrazku. Póki kompiluję pod MinGW z GDB, wszystko gra. Ale chciałem x64 więc zainstalowałem i skonfigurowałem Qt Creatora pod VS2017 z CDB. No i tak mi pokazuje... co mu nie pasuje i czy będę musiał przerabiać cały kod, bo takich kwiatków będą miliony i lepiej zostać z MinGW?
Dijuna - #programowanie #cpp #qt 

Mam sobie taką funkcję i błędy jak na załączonym...

źródło: comment_9VkP5QNiO7AE1VLK43tzxNaeCiKqoOwf.jpg

Pobierz
  • 15
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Dijuna: nie wnikałem w te błędy (co zresztą trudno robić mając tylko taki wycinek kodu i to jeszcze częściowo zakomentowanego - mam nadzieję, że nie próbujesz tego tak kompilować przynajmniej :P), ale spróbuję odpowiedzieć na Twoje pytanie "czy będę musiał przerabiać cały kod": jeżeli piszesz go w taki sposób jak tym screenie, to zdecydowanie tak. If wewnątrz ifa wewnątrz fora wewnątrz fora? Tego nie będzie Ci łatwo developować.
  • Odpowiedz
@informatyk: to zakomentowane jest tam dlatego, że pokazuje jaki jest początek funkcji... żeby nie było całej na screenie. Zakomentowałem odruchowo, nie wiem po co. :P

Nie interesują mnie rady stylistyczne, pytam o konfigurację. Program działa, nie muszę już nic z nim robić.

@msichal: czepia się. :)
  • Odpowiedz
@Dijuna: A spróbuj przed '{' w ostatnim elemencie na liście wstawić nazwę typu, tak aby każdy element miał ten sam typ. Bo taka składnia powinna działać nawet na M$VC.
  • Odpowiedz
@lionbest: @alex-fortune: sprawdzę wasze sugestie po pracy, bo w pracy mam tylko MinGW. Ale jeżeli chodzi o dodanie (QList) przed {} to zmienia błąd na "nie możesz castować initializer list w ten sposób", dokładnie nie pamiętam. Z tym, że dodałem (QList>) przed pierwszą listą, a nie tą wewnątrz niej więc spróbuję też tego co mówisz.
  • Odpowiedz
@alex-fortune: ale ja nie tworzyłem żadnych iteratorów niestandardowych, to zwykłe listy pointerów do QObject'ów... i choć jestem w stanie jakoś prześledzić o co chodzi w odpowiedzi, to nie umiem na tej podstawie określić co JA mam zrobić żeby to zadziałało. ;c
  • Odpowiedz
@Dijuna: To wygląda na błąd MSVC2015 który w tym kontekście nie tworzy std::initializerlist jeżeli nie wszystkie pola mają ten sam wydedukowany typ, a wyrażenie {&a,&b} samo w sobie powinno być std::initializerlist a nie QList. v
  • Odpowiedz
  • 0
@lionbest: neighbours to listy pointerow, {&, &} to tez lista pointerow. By zachować ten sam typ, musiałbym zcastowac {} do listy, czy coś mieszam? No i jak próbuje, to mi mowi, ze nie można castowac initialozerlists
  • Odpowiedz