#cpp #visualstudio #programowanie #programista15k #gamedev Cześć, czy Ktoś może wie ak wynikają te wartości z profilera? Chodzi mi tu głównie o pierwszą linijkę, gdzie wykonuje dość prostą operację int cellX = (int)floor_x >> 6; jest ona zaznaczona na czerwono a ta poniżej już nie.. i na końcu 3 ostatnie linijki, z czego może wynikać ta duża wartosć? chodzi o dostęp do pamięci?
ZawzietyRobaczek - #cpp #visualstudio #programowanie #programista15k #gamedev Cześć, ...

źródło: comment_1604628795zEXIvwVdbFSOcfy6IhQ1W7.jpg

Pobierz
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@ZawzietyRobaczek: jak spojrzysz w wygenerowany ASM to pewnie wszystko się wyjaśni. Stawiam, że kompilator poupraszczał sobie te tymczasowe zmienne i zamiast 20 linii obliczen robi parę czarów na rejestrach i ma wynik.

I tak, dostęp do pamięci jest kilkaset razy wolniejszy niż obliczenia. W takiej pętli mieszanie w tablicach będzie najwolneijsze. Największy gain jaki możesz tu mieć to takie poprzekładanie, by te ucoutputbuffer zapełniać po kolei.
  • Odpowiedz
@bzdety: To raczej program do symulowania wyglądu rastra drukarskiego - jakbyś to puścił do druku to by niezła masakra wyszła :)
Fotoszop ma taką funkcję pod nazwą "rastrowanie półtonu".
  • Odpowiedz
mam sobie takie drzewo namespaców, że np.
Tasks::Core
Tasks::UI
Tasks::LAN
Tasks::LAN::FTP
Tasks::LAN::SSH
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@bartd: a mam takie programy które wymagają konkretnie skonfigurowanego raspberry i ciągle jakieś zmiany więc robię instalator/konfigurator/patcher żeby odpalić na PC i żeby wszystko poustawiał do najnowszej wersji gdy trzeba :D z ciekawych namespace to jest tam jeszcze TCP i UART :D
  • Odpowiedz
@s_theCapt: jak chcesz tworzyć takie listy z palca i odwoływać się przez ADL, to trzeba sobie zrobić pomocniczą funkcję w danym namespace, żeby ADL to łyknął: https://ideone.com/sTsahY

ale osobiście polecałbym bardziej użyć wspomnianego wcześniej magicenum, albo samemu się pobawić z __PRETTY_FUNCTION__, albo użyć jakiegoś BOOSTPP do generowania
  • Odpowiedz
Chciałem poćwiczyć trochę gita, więc stworzyłem repozytorium do którego załączyłem jakieś pliki z kodem w C. Zrobiłem commita, wszystko ładnie widać na githubie. Następnie utworzyłem kolejne pliki, chciałem sobie je kompilować, lecz mój makefile mówi że wszystko jest "up to date" podczas gdy jeśli spróbuję kompilować bezpośrednio za pomocą gcc to on krzyczy że moje pliki .h nie istnieją.
Domyślam się że to przez gita, rozwiązanie jakie sobie wyobrażam to zacomittowanie tego
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Gamgee: usuń .o i maina wynikowego, zrób make main (w ogóle to ten main: w Makefile'u powinineneś mieć najwyżej pośród "receptur", wtedy po prostu piszesz make i on ci bierze tę najwyższą) i zobacz czy ci się ładnie kompiluje.

Potem napisz ładnie tego cleana.
  • Odpowiedz
@zwei: Usunąłem tak jak napisałeś i teraz są jakieś znaki życia. Nie kompiluje się, bo mam błędy w plikach ale to wszystko do rozwiązania już.
Trochę po omacku potraktowałem temat i są efekty. Poprawiłem to co napisałeś, dzięki wielkie za pomoc!
  • Odpowiedz
#naukaprogramowania #cpp
domyślam sie że ten kod to rak. ale przy refaktoryzacji kodu wywaliło mi błąd z którym od 5 godzin sie męcze
https://pastebin.com/RJWRet2E
cały czas problemem jest dodanie do polimorficznego wskaźnika typu kształt, obiektu typu prostokąt.
koło, trójkąt działają super, i w poprzedniej wersji prostokąt też działał, ale teraz VS mi sypie błędami pokroju:
expected type identyfier, syntax error: identifier 'Rectangle'
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Zauważyłem w kodzie linię wyglądającą jak coś w tym stylu:
unsigned int x = (2137, 1);
Generalnie był to jakiś czeski błąd po refactoringu, ale dziwiło mnie to, że to się w ogóle kompiluje. I gdy wykonywana jest ta linia, do x przypisywana jest wartość 1. Sprawdziłem to dla innych przypadków i wygląda na to, że po umieszczeniu w nawiasach kilku elementów, wyrażenie to zawsze zwraca ostatni. Jest mi ktoś w stanie
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Może ktoś pomoże pomysł bo ja już nie mam siły.
Język C++. Proste zadnie na studia.
Mam daną "money" typu float przechowującą pieniądze czyli na przykład 2.30 złotego.
Potrzebuję napisać funkcję zawracającą ile jest groszy w tej danej (typ int).

No i robię to tak:
  • 19
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Jakoś mnie naszło podczas rozwiązywania jednego problemu ile rzędów różnicy move będzie szybszy niż copy. No i nie wiem czy czegoś źle nie zrobiłem, albo nie zrozumiałem, bo różnica w szybkości jest niezauważalna dla tego przypadku. Wyniki są prawie takie same. Z czego to wynika?

Przy długości wektora 100000000 dostaje takie wyniki:

copy: elapsed time: 0.0234539s
move: elapsed time: 0.0218534s
JakTamCoTam - Jakoś mnie naszło podczas rozwiązywania jednego problemu ile rzędów róż...

źródło: comment_1603229475xPnOBhtyQ9CcHWG37qH6FD.jpg

Pobierz
  • 18
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@JakTamCoTam: move na intach to robienie kopii. zrób move na całym kontenerze, a nie jego elementach.

+ włącz optymalizację, +uważaj, żeby ci całej operacji kompilator nie wyoptymalizował, skoro nigdzie potem nie korzystasz z b ani c
  • Odpowiedz
@davidero69: no kwadratowa, czyli liczba przebiegów rośnie kwadratowa, dla N = 1 masz 1, dla N = 2 masz 4, dla N = 10 masz 100, dla N = 1000 masz 1000000

Najprostszy O(n^2):

for(int i = 0; i < len(arr);
  • Odpowiedz
#cpp #php

Szukam ksiazek do nauki tychze jezykow. Poleci ktos cos?
Aktualnie mysle nad zakupem jednej z tych dowch pod c++:
C++ Primer (5th Edition)
Programming: Principles and Practice Using C++
  • 15
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@blakker: Naucz się zatem javascriptu. Ładnie się to połączy z tym co umiesz teraz i da Ci przedsmak prawdziwego języka programowania. Jak już sobie ogarniesz ten język, nauka Javy, Pythona czy C++ będzie dużo łatwiejsza.
Polecam ten kurs: https://kursjs.pl
  • Odpowiedz
Cześć Mireczki,

od lat jestem jednym z organizatorów w pełni darmowej, konferencji programistycznej code::dive - konferencji która z pewnością dedykowana jest sporej grupie z Was. Dziś uruchomiliśmy rejestrację i dlatego chciałem się z Wami podzielić tą nowiną i zachęcić Was do zapisania się.

Oczywiście ze względu na #covid19 w tym roku spotykamy się wyłącznie online.

szczegóły,
lkoikm - Cześć Mireczki,


od lat jestem jednym z organizatorów w pełni darmowej, ...

źródło: comment_16027665765fT4uwzQ7d8SVtpKxTOOPL.jpg

Pobierz
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@lkoikm: zaplusowałem, bo brałem udział co roku, ale w tym roku kompletnie nic ciekawego nie ma w agendzie, pierwszy raz się tak zdarzyło. W ogóle czemu jest 2x mniej prelekcji w tym roku?
  • Odpowiedz
@lkoikm: ale co covid? Przecież konferencja i tak jest zdalnie, to powinno być więcej prelegentów, a nie mniej, skoro mogą siedzieć w domu zamiast przylatywać na zadupie Europy :P
  • Odpowiedz
Siemano, mam pewien problem, z którym się męcze od wczoraj. Pisze program, który zawiera dwie klasy - Punkt i Prostokąt, gdzie atrybutami w punkcie są współrzędne xy w układzie współrzędnych, a w prostokącie współrzędne wierzchołka oraz jego długość i szerokość. Zadaniem programu jest sprawdzenie, czy punkt należy do prostokąta. Sprawdzać będzie to funkcja Sędzia, która jest funkcją zaprzyjaźnioną z poprzednie wymienionymi klasami i za argumenty przyjmuje te klasy jako obiekty (nie wiem,
K4M1L3X - Siemano, mam pewien problem, z którym się męcze od wczoraj. Pisze program, ...

źródło: comment_1602497171i1KEY98ypNXUMqQ14SuN4t.jpg

Pobierz
  • 11
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Co powinien umieć Junior C++ w 2020 roku?
Moja wstępna lista wygląda tak:
- Podstawy pracy z GIT
- Ogarnianie środowiska programistycznego pod linuksem
- angielski
- C++/boost/SQL/Qt
  • 12
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@SredniDystans: w c++ zawodowo nie siedzę ale jako programista HTML mogę poradzić

- Ogarnij Conan lub inny menadżer. Znajomość cmake też się przyda.
- 1 a) te standardy ułatwiają programowanie w c++ np. praca że wskaźnikami. Dobrze by było poznać temat.
b) chociaż testy jednostkowe imao
2. Rekruter nie rozumie projektów na GH ale mi to więcej mówi niż rozmowa kwalifikacyjna. Imo warto. To nie musi być nie wiadomo co ale projekt musi być
  • Odpowiedz
@r00ti: Nie bądź zaskoczony jak w jednym pliku będziesz miał C++98 obok C++17. ( ͡° ͜ʖ ͡°) W telco nowych projektów nie zaczyna się codziennie.
Byłem zatrudniony bezpośrednio, ale wątpie że bycie eksternalem coś zmienia. Może dostęp do benefitów, ale pewnie poza tym nic.
  • Odpowiedz
konto usunięte via Wykop Mobilny (Android)
  • 0
@jaromaz: to Facebook czy jaka strona ostatnio na Netflixie puścili dokument co tam wykorzystują no i w google. I niby że względów moralnych odeszli z firm ludzie co tam pracowali
  • Odpowiedz