#cpp #algorytmy

Siema, staram sie zaimplementowac algorytm Prima dla minimalnego drzewa rozpinającego, mój problem pojawia sie w miejscu, gdzie sprawdzam jakie krawędzie należą do danego wierzchołka.
Niby jak siedze w środku funkcji to wszystko ok, jednak jak tylko jej działąnie dobiegnie końca to vector, który podaje jako ostatni argument funkcji nagle staje sie pusty. Nie mam pojęcia dlaczego

void getConnections(Apex apex, Connection* arrayConnections, int arraySize, std::vector vectorConnections) {
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

`void getConnections(Apex apex, Connection* arrayConnections, int arraySize, std::vector vectorConnections) {


@Lacwik: tworzysz kopie vectorConnections, uzyj referencji std::vector& vectorConnections
  • Odpowiedz
Co powiecie na tag z zagadkami z #cpp, powiedzmy #cpptricks? Byłoby zainteresowanie czymś takim? Zagadki zwykle by miały drugie lub trzecie dno. Zagadki można łatwo sprawdzić - wystarczy przepisać kod do ideone, gdzie zwykle sam będę pisał zagadki. Ale chodzi o to, żeby sprawdzić samego siebie.

Na początek coś na rozgrzewkę - co się wypisze?


#programowanie #naukaprogramowania
MamCieNaHita - Co powiecie na tag z zagadkami z #cpp, powiedzmy #cpptricks? Byłoby za...

źródło: comment_Zfdqd6bvwtdAgLaKfx0e8K6xdPG1t6z1.jpg

Pobierz
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#cpp #programowanie

using namespace std;

Za to zostałem zkrzyczany :( serio konflikt nazw to taki serious deal? std:: przed każdym cin coutem itd trochę zajmuje, poza tym dopisuje się jeszcze czasami do innych rzeczy typu string. Co myślicie?
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@mips: w plikach .cpp to nie jest straszna zbrodnia, gorzej jak używasz tego w headerach, wtedy propagujesz using namespace na wszystkie pliki, które includują ten header.
  • Odpowiedz
Mireczki potrzebuje pomocy z #cpp. Napisałem program na zajęcia i nie bardzo wiem dlaczego "BMAlghorithm" nie działa tak jak powinien. Powiem szczerze, że rozumiem jak działa cały algorytm, ale jakoś nie potrafię go zaimplementować. Program ma ogólnie wyszukać wzorzec w podanym tekscie, tak jak to robi pierwsza dzialająca w programie funkcja "linearSearch". Posklejałem to jakoś i coś nie pyka. Cpp to też nie jest mój język no ale na
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@dupasmoka: Faktycznie nie wyraziłem się jasno. Program na wejściu ma otrzymać słowo i wzorzec. Potem ma sprawdzić czy wzorzec zawiera się w podanym słowie i jeżeli tak to wypisać ile razy i od którego znaku się zaczyna. BMAlghorithm ma być implementacją algorytmu Boyer-Moore'a i dać dokładnie taki sam rezultat jak linearSearch. Zależnie od wprowadzonego tekstu BMAlghorithm albo wyszukuje zbyt mało wyników, albo wychodzi poza zasięg Stringa przez co wywala program.
  • Odpowiedz
@Trismagist: ok ok, ale co innego napisać konwerter bitmapa to ascii, a co innego napisać w zasadzie silnik 3D dla ascii łącznie z tymi wszystkim operacjami przekształceń w przestrzeni ()
  • Odpowiedz
#qt #programowanie #cpp

Jak poprawnie zainstalować qt? Potrzebuję tylko tego co już zaznaczone i najnowszej wersji czy czegoś jeszcze? W toolsach zaznaczone jest tylko QT creator, nie potrzebuję minGW ani frameworka? Sporo pobierania mnie czeka więc chce być pewien, dzięki ;)
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@xyzzy: Framework potrzebny - wybierz odpowiednią wersję do Twojego kompilatora. Jeśli kompilatorem jest MinGW, to w toolsach zaznacz odpowiednią wersję.
  • Odpowiedz
@mips: i tak jest, dodatkowo indywidualnych licencji można używać w firmach, o ile pracodawca nie "oddaje" pieniędzy za nią w żaden sposób.
Ale serio 9 euro miesięcznie za licencje to tak dużo dla #programista15k ?( ͡° ͜ʖ ͡°)
  • Odpowiedz
@MrBanana: płace rocznie, wcześniej miałem studencką wersję, więc miałem też zniżkę na pierwszy rok jakieś 25%, najbardziej to boli że musimy płacić w EUR, bo w $ wychodzi znacznie taniej, nawet w GBP jest taniej.
Pierwszy rok kosztował mnie jakieś 1022 zł (229.70 EUR ale nie wiem jaki wtedy był kurs + pewnie prowizja banku) (razem z vatem bo na stronie podają bez), bez zniżki by było jakieś 306 EUR.
  • Odpowiedz
@GotoFinal: to nie w runtime, tylko podczas kompilacji lombok dorzuca swoj bytecode - metody, pola itp - i w wyniku tego powstaje normalny plik class ktory dziala wszedzie. Problem polega na tym ze to co widzisz kodzie jest inne niz wygenerowany bytecode w class. Immutables tworzy subclass danej klasy i tam dorzuca swoje rzeczy.

Mi sie wydaje ze to dziala na wszystkich kompilatorach bo jest to oficjalne api - https://docs.oracle.com/javase/8/docs/api/javax/annotation/processing/Processor.html

no
  • Odpowiedz
@afe1:

to nie w runtime, tylko podczas kompilacji l

No chodzi o runtime kompilacji, przecież cały czas piszę o API kompilatora :P

No i niestety pomijasz ważną rzecz: te api pozwala tylko wygenerować nowe klasy itd - ale nie możesz edytować AST obecnej klasy tak że dodajesz sobie getter i możesz go bezpośrednio używać z tej samej klasy. Jak dodasz metodę do istniejącej klasy to nie możesz jej użyć w tej
  • Odpowiedz
Czwarty dzień promocji w księgarniach #helion Sensus i Bezdroża oraz drugi dzień promocji w księgarni Onepress, przynosi nam dziś następujące #mirkopromocje na #ksiazki

W księgarni Helion książkę Stephena Praty Język C++. Szkoła programowania. Wydanie VI, możemy kupić 50% taniej (za 49,50zł)! (czyli #naukaprogramowania #cpp )
W księgarni Sensus możemy kupić książkę Balthasara Graciána i Jeremy'ego Robbinsa Sztuka roztropności. Podręczna wyrocznia za 17,45zł (na
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Pytanie do #programista15k i Mirkow z #programowanie #cpp #qt . Siedzę już trochę w qt i z tego co wiem to na obu licencjach dostępnych mogę sprzedawać jeśli jeśli linkuje dynamicznie biblioteki od qt. Linkowanie statyczne wymaga licencji, a zmiany w qt wymagają opublikowania. Do tej pory robiłem na embedded linuxa, więc kompilowalem qt i były biblioteki w systemie.
Teraz będę robił apke desktopowa
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@WilczurZnahor: Kiedyś sporo szukałem na ten tamat i z tego co zrozumiałem czytając różne fora, to licencja LGPL wymaga tego, żeby biblioteki QT były linkowane dynamicznie (i można je było podmieniać), ale nie było wzmianki o tym, że nie można dostarczać ich w formie "bundled" ze swoją aplikacją.
  • Odpowiedz
@herejon zgodnie z wykładnia prawa podatkowego nie miałeś czego się obawiać...
Ale widzisz... Ten post na mikro może Ci zupełnie pogrążyć, bo widzisz takie reklamówki, to teraz całkiem spory majątek, a wiesz, że jest tu sporo wąsatych co każdego grosza zazdroszczą... No i znajdą sposób, żeby Ci to odebrać to co Ci pozostało... I to jeszcze palisz te siatki... Prosta droga nie tylko do straty, ale i do pasiaka...

Taka rada
  • Odpowiedz
@Tomek1902: :<<< Jak mogę szybko usunąć siatki ? Próbowałem już wszystkiego, spalanie, za dużo dymu sąsiedzi krzyczą, nie mogę mówić im codziennie, że znów włożyłem pizze do piekarnika z folią. Próbowałem topić, ale one wypływają CIĄGLE! Ja teraz nie jem nawet z talerzy tylko z reklamówek i wyrzucam ale ciągle mam ich pełno, ostatnio próbowałem sprzedawać drinki w reklamówkach ale mało chętnych było. Ubieram się codziennie w reklamówki, i wyrzucam
  • Odpowiedz
@wrexwaz: przestarzała ta grafika, bo np. w przypadku iOS teraz liczy się już wyłącznie Swift, wiele frameworków pisanych dla Objective-C nie jest już w ogóle rozwijanych
  • Odpowiedz
@CichyGlosZTyluGlowy: odpowiednik HashSet to std::unordered_set, std::set to odpowiednik SortedSet. To pierwsze jest oparte na hashowaniu, dlatego jest nieuporządkowany, a zamortyzowany czas to O(1), natomiast drugi jest uporządkowany, bo jest oparty na różnych odmianach drzewa binarnego (czas O(log n))
  • Odpowiedz