Witam,
mam pytanie, co w Qt oznacza taki zapis:
ui->setupUi(this);
nie spotkałem się z nim w c++ ( przerabiałem kurs Pana Mirosława Zelent ). Wiem pytanie banalne, ale zeby zacząć zadawać trudniejsze muszę zacząć od zera : D
Z góry dziękuję : )
Witam,
mam pytanie, co w Qt oznacza taki zapis:
ui->setupUi(this);
nie spotkałem się z nim w c++ ( przerabiałem kurs Pana Mirosława Zelent ). Wiem pytanie banalne, ale zeby zacząć zadawać trudniejsze muszę zacząć od zera : D
Z góry dziękuję : )
Tu eksperta od Qt trzeba. Wołam @kq.
Nie ironizuj pingwin.
Zapraszam do dowolnego dobrego kursu (niestety, raczej źle trafiłeś). ->
to operator dostępu do członka klasy, Twój zapis jest równoznaczny z (*ui).setupUi(this)
Dziękuję : ) dlaczego źle trafiłem ? (fakt że nie rozumiem co napisałeś, ale już jestem bliżej zrozumienia niż 30 min temu : D ) :( czy jest jakiś kurs który płynnie przechodzi od c++ do qt ?
To nie jest zapis jakiś specjalny dla Qt. Po prostu za mało znasz C++.
Dlaczego nie Zelent? http://4programmers.net/Forum/1226486
Dobra, myślę że to dobry czas by zakupić książka Symfonia c++, ma bardzo dobre opinie w internecie, tylko ofert pracy jako programista c++ jest mało, czy po przerobieniu tej książki łatwo jest się przenieść na np. java? Mam bardzo duży dylemat jaki język wybrać, ponieważ co ogłoszenie o prace to inny język programowania i przez dwa miesiące będę się uczył podstaw c++ , a później się okaże że i tak pracy po tym nie ma : (
C++ teraz jest używany głównie w grach AAA - np. w silniku Unreal.
Jednakże ogrom softu wytwarza się obecnie w Javie i C#.
W czymkolwiek nauczysz się programować, w innych językach myślenie jest takie samo. Jedynie zapis się zmienia ;) Ale po nauczeniu się jednego języka i obsługi jego biblioteki standardowej, wiesz czego szukać w innych językach.
Załóżmy, że spodobał Ci się vector w C++. Szukasz "c++ vector java" i pierwsze co Ci wyskakuje, to "użyj ArrayList" ze stackoverflow :)
Ok tak zrobię : ) c# wywodzi się z c++ tak?
Symfonia c++ 3 c to najnowsze wydanie? Tak jest na allegro ale nie wiem czy można ufać sprzedawcą : D
Nie, C# nie wywodzi się od C++. Jednak podstawy są bardzo podobne we wszystkich 3 wymienionych w wątku językach.
symfonia nie jest dobra ksiazka do C++
Na dobra sprawe nie ma dobrej polskiej ksiazki do C++
A prawie wszyscy ja polecają : d
Wybitny Samiec napisał(a):
A prawie wszyscy ja polecają : d
Kto? Uczniowie, którzy nie mają styczności z prawdziwym kodem czy nauczyciele, którzy nie mają styczności z prawdziwym kodem?
Symfonia była kiedyś dobra. Kiedyś. Z 10 lat temu może sam bym ci ją polecił. Ale mamy rok 2016 a nie 2006 a książka się nie zmieniła...
Hmm to jaką książkę kupić ? do podstaw c++
Jak wygooglujesz coś dobrego to daj znać, bo ja jeszcze nic nie widziałem. Najbliżej jest chyba Prata wersja 6, ale to też nie ideał.
Wiem mniej niż wiedziałem, a po przeczytaniu jakiegoś tematu na tym forum w którym zdecydowanie odradzana była nauka c++ zastanawiam się czy nie zmienić języka na np. java - ciekaw jestem czy tutaj jest jakaś książka polecana po polsku : )
@kq: Operator wyłuskania to "*".
Wskazany tutaj operator "o->p" ma różne nazwy, ale to odwołanie się do pola struktury/obiektu.
Jest to inaczej niż w języku angielskim.
"*": pol: operator wyłuskania, ang: indirection ("wskazanie pośrednie")
"->": pol: odwołanie/wybór pola z obiektu/struktury, ang: "structure dereference" (wiki), "member of pointer" (cppreference)
Źródła:
http://en.cppreference.com/w/cpp/language/operator_member_access#Built-in_member_access_operators
https://en.wikipedia.org/wiki/Operators_in_C_and_C%2B%2B#Member_and_pointer_operators
https://pl.wikipedia.org/wiki/Operator_%28programowanie%29
Edit: dodatkowo - K&R tego specjalnie nie nazywa (ja przynajmniej nie znalazłem),
za to w polskim "Język C++ Kompendium Wiedzy" jest dodatkowo do tego co wyżej "*" - "dereferencja".
Wybitny Samiec napisał(a):
Wiem mniej niż wiedziałem, a po przeczytaniu jakiegoś tematu na tym forum w którym zdecydowanie odradzana była nauka c++ zastanawiam się czy nie zmienić języka na np. java - ciekaw jestem czy tutaj jest jakaś książka polecana po polsku : )
Ja zacząłem od C++ a później bardzo łatwo uczyło mi się Javy. Syntaktycznie są dość podobne. A co do książek to polecam tą: Java: The Complete Reference wydanie IX. Jest też po polsku.
Wybitny Samiec napisał(a):
Witam,
mam pytanie, co w Qt oznacza taki zapis:ui->setupUi(this);
nie spotkałem się z nim w c++ ( przerabiałem kurs Pana Mirosława Zelent ). Wiem pytanie banalne, ale zeby zacząć zadawać trudniejsze muszę zacząć od zera : D
Z góry dziękuję : )
Chodzi o to by ładnie połączyć twój kod z kodem generowanym automatycznie.
Wyklinałeś jakieś okno, które jest zapisanie w postaci xml-a. Teraz podczas budowania Qt na pdostawie tego generuje kod C++ , który utworzy okienko takie jak wyklinałeś.
Ponieważ kodu generowanego nie należy modyfikować ręcznie, a musi on być jakoś połączony z twoim kodem, całość wygenerowanej logiki ukrywa się za wskaźnikiem ui
.
Do setup musisz przekazać this
bo ta wygenerowana funkcja musi wiedzieć, gdzie (w jakim MainWindow) umieścić te elementy UI.