Aktywne Wpisy

ZenujacaDoomerka +12
Baba nigdy na studniówce nie była, na balu gimnazjalnym. stała pod ścianą.
Jak klasa sobie zdjęcia robiła to specjalnie mnie nie zawołali żeby mnie na nich nie było i powiedzieli, że wyszłam.
Jedyna przyjaciółka z którą poszłam mnie zostawiła po 30 min dla innej grupki.
Przez te niby najlepsze lata życia mam traumę aż do grobowej deski a jakiś chuop przyjdzie powie, że ma traumę bo rodzice mu kazali być grzecznym
Już
Jak klasa sobie zdjęcia robiła to specjalnie mnie nie zawołali żeby mnie na nich nie było i powiedzieli, że wyszłam.
Jedyna przyjaciółka z którą poszłam mnie zostawiła po 30 min dla innej grupki.
Przez te niby najlepsze lata życia mam traumę aż do grobowej deski a jakiś chuop przyjdzie powie, że ma traumę bo rodzice mu kazali być grzecznym
Już

Aokx +53





Małe pytanie odnośnie tego co tak właściwie Qt robi podczas emitowania rzeczy jako sygnały.
Mam sobie takiego emita:
emit sendbytearray(Datatosend);
a po nim robię to:
Datatosend.clear();
Datatosend.~QByteArray();
Pytanie brzmi - co się dzieje podczas emitowania? Tutaj jak widać emituję obiekt jako całość. Rozumiem, że adekwatny slot zrobi sobie jego kopię? Co się wtedy dzieje z emitowanym obiektem wewnątrz funkcji emitującej? Czy Qt uznaje go za wysłany i sprząta po sobie (co jest mało prawdopodobne, bo co jakbym chciał coś wyemitować do kilku rzeczy na raz?), czy jednak muszę po sobie posprzątać, bo jak emisja jest w pętli to będzie wesoły wyciek pamięci? Przy czym ten obiekt jest i tak w zakresie działania funkcji i nie jest wklepywany do wskaźnika, więc na koniec wywołania ona sama powinna po sobie posprzątać.
Pozatym:
Datatosend.~QByteArray();Ała #!$%@? moje oczy.
Co z tym?
Swoją drogą jak już tu jesteś - jak wymusić na QTcpSockecie informację o tym, że się połączył ale bez wysyłania żadnych danych? W sensie Socket grzecznie mi emituje sygnał Connected, ale dopiero wtedy jak jakieś dane przez niego przejdą. Jeśli serwer tylko spiknie dwa sockety ze sobą, ale nie zostaną przesłane żadne dane, to
@lionbest: Ƶaden
QVariant, po to rejestrujesz typy, ƶeby Qt bez tego umiało sobie poradzić.QByteArray, jak i większość (wszystkie?) kontenery Qt jest współdzielony, więc tworzona jest tylko płytka kopia (tak naprawdę kopiowany jest tylko wskaźnik na dane, którego refcount rośnie).a
emitto tylko cukierQMetaType::createdo stworzenia kopii każdego z argumentów.refcount->increase().