@JakTamCoTam: No tak ale co tak naprawdę daje ci OOP? Większość potrzebnych rzeczy masz w STLu, najpierw trzeba poznać gotowe rozwiązania by pojąć jakie są możliwości. A dopiero potem jak można podzielić i zhermetyzować kod i poco to właściwie robić. I tak w C++ najpierw trzeba poznać programowanie strukturalne.
  • Odpowiedz
@erwit: Ała, ta czcionka, nic nie widzę, po za tym co tam robią znaki unicodu → ≠ ?
BTW Domyślam się że wydajność tutaj raczej chyba niema znaczenia, ale jak z wypełnieniem mapy DXcfreq?
Klucze masz 16bit czyli na upartego to 128kb ciągłej przestrzeni. Może by ci ułatwiła jakaś bibloteka, przykładowo Eigen::SparseVector?
  • Odpowiedz
@Saly: Oh nie wiedziałem, czcionka ujdzie ale te znaki & oraz @ zupełnie nieczytelne i nie mogę ich przeboleć.
Wiem w repo od czcionki są linki do innych czcionek, testuje sobie właśnie Iosevka, ale Monoid też wygląda fajnie. Choć raczej średnio mi ten pomysł mi ogólnie przypadł do gustu.
  • Odpowiedz
Czy warto zacząć naukę CGI + C++ dla wydajności? Jeśli tak to macie jakieś przydatne dokumentacje/artykuły/poradniki?
Jeśli chodzi o podstawę bez bibliotek to wygląda to jak w C++ tylko nie mam pomysłu jak pobierać POST & GET z formularzy bez żadnych dodatkowych bibliotek.
#programowanie #naukaprogramowania #cpp #webdev
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

cgicc


@wynkelring: Nie mam pojęcia bo nie robiłem cgi w c++, wiem tylko, że biblioteka standardowa C++ nie zapewnia takich funkcjonalności (zresztą jak więszkości rzeczy xd)

C++ + CGI to masochizm trochę, tylko ma to sens gdy się obsługuje ogromny ruch. "Głupi" JavaScript na node.js potrafi obsłużyć kilkadziesiąt tysięcy requestów na sekundę to po co w c++ sobie życie komplikować
  • Odpowiedz
@wynkelring: Post i get to zwykły tekst, więc jak się wepniesz odpowiednio, to wystarczy potem znaleźć pierwszą pustą linię (powyżej są nagłówki) i będziesz mieć treść. Dość skomplikowane będzie bez dodatkowych bibliotek, ale nie niemożliwe.
  • Odpowiedz
Czy istnieje jakaś pożądna biblioteka do dat i czasów? Próbowałem użyc boost date_time, ale oprócz nieprzyjemnego interfejsu zauważyłem, że brakuje funkcji do sparsowania pełnego ISO 8601 np. 2018-09-22T07:45:30+01:00

#cpp
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Cześć,
bawię się w przygotowanie biblioteki, która będzie w miarę niezależna od dystrybucji #linux. Moja biblioteka potrzebuje:
- liba.so
- libb.so
- libc.so
wszystkie mają jakieś symbole w sobie, a finalnie, po linkowaniu statycznym dokładane są jeszcze moje. Próbowałem zrobić strip --strip-unneeded na końcowym pliku, ale to tylko usuwa symbole z mojej biblioteki, a te z zewnętrznych zostają. Da się zrobić to na odwrót? Tj. usunąć symbole z bibliotek
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@lionbest: z takich właśnie korzystam. Znalazłem już problem i linkuje się dobrze. Parametry linkowania podawałem dla cmake w zmiennej CMAKEEXELINKERFLAGS, a powinienem w CMAKESHAREDLINKERFLAGS. Razem z opcją set(CMAKECXXVISIBILITYPRESET hidden) i set(CMAKESHAREDLINKERFLAGS "-Wl,--exclude-libs,ALL") działa super :)

Trzeba było tylko jeszcze ustawić visibility na default w funkcjach, które chcę wystawić za pomocą mojej biblioteki.

Co do linkowania, to problem pojawił
  • Odpowiedz
@Niegrzeczny_gentleman: W sumie asio dalej niema dobrej alternatywy.
@bolot: Przede wszystkim biblioteki które weszły lub mają odpowiedniki w nowych standardach C++, shared_ptr, tuple, variant, any, regex, treads, bind, array, atomic, date time, filesystem, function, format, lexical cast, optional, signals, random.
Niestety sporo legacy kodu powstało i nikt nie kwapi się by podmienić je na STL.
Tak naprawdę najważniejsza jest umiejętność czytania dokumentacji, dokładniej referencji do bibliotek bo do
  • Odpowiedz
#programowanie #naukaprogramowania #cpp #sfml #youtube

Właśnie robię sobie tutki i teksturuje i pomyślałem że podzielę się z wami fajnym kanałem.
Lekcje są krótkie ale koleś fajnie tłumaczy od samego początku i powoli począwszy od instalacji sfml przechodzimy dalej.
Mi osobiście świetnie się ogląda i robi ten tutek więc polecam. Podstawowy angielski i odrobina wiedzy z zakresu c++ obsługi środowiska (ja codeblocks a autor używa microsoft
krulwypoku_IgB6 - #programowanie #naukaprogramowania #cpp #sfml #youtube

Właśnie r...
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Wstępna wersja mojego programu do obsługi hot corners w praktycznie każdym środowisku już wstępnie działa :D
https://github.com/Leinnan/lwa-hot-corners

Baaardzo długo go nie tykałem jednak w ten weekend w domu rodzinnym naszła mnie wena żeby w końcu coś hobbystycznie pokodzić i wypadło akurat na to. Zrefaktorowałem kod, używam więcej rozwiązań z nowszych standardów C++ i mam wrażenie że już teraz całkiem elegancko śmiga.

Myślę też czy nie dodać też jakiegoś graficznego konfiguratora, ale to już rzecz dodatkowa.
  • 12
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Może wykażę się butą ale IMO cały tamten program to fuszerka.


@Leinnan: Wiem xD

Jednak dzięki mojemu podejściu możesz używać mojego rozwiązania nawet jak nie masz gtk w ogóle w
  • Odpowiedz
Jednak według mojej opinii co jest do wszystkiego to jest do niczego i to się zazwyczaj sprawdza.


@Kryspin013: Jakbym starał się obsługiwać zarówno Xy, Waylanda i jeszcze Windowsa(XD) to taki zarzut byłby zasadny :P

Może napiszę od zera. Musiałbym tylko ogarnąć
  • Odpowiedz
@cruc: Jak to ja nie napiszę stronki w C++? Pamiętam jak 10 lat temu o-------m server w C++ by zrobić stronę do konfiguracji, bo na 200 MHz i 32 MB ramu ciężko jeszcze zmieścić Apache i PHP. Działa w wielu miejscach po dziś dzień, bo kto będzie wymieniał dobrze działający sprzęt. Teraz jest trochę inaczej bo o ile każda drukarka/router/dron z WiFi ma konfiguracje przez stronę, to najlepszym sposobem jest
  • Odpowiedz
@Danieru: jeśli udowodnisz, że ten "statyczny polimorfizm" rzeczywiście przyspiesza w stosunku do normalnego rozwiązania, to *koniecznie* wołaj. Będę w szoku, jeśli w ten sposób ugrasz więcej, niż błąd pomiaru.

A tak serio to zanim zaczniesz robić takie sztuczki i zaciemniać kod, użyj profilera i sprawdź, gdzie najwięcej czasu tracisz.

- jest duże prawdopodobieństwo, że możesz poprawić algorytm,
- jeśli masz jakiekolwiek IO (np. sieć, pliki, ...), to na bank indirection nie
  • Odpowiedz
@CppPolska: Bardzo fajny wpis, ale brakuje zupełnie dwóch informacji.
Po pierwsze, co zwraca std::visit ? Bo w sumie jedno zdanie czyli tyle ile na cppreference.com. Jeżeli nie da się wymusić konkretnego zwracanego typu to pewnie trzeba zadbać żeby przykładowo wszystkie instantacje lambdy zwracały to samo.
Po drugie jak wydajne jest to rozwiązanie? Tutaj można przedstawić jakieś benchmarki wobec ręcznej (switch case) i dynamicznej implementacji (virtual caller).
Czyli w sumie
  • Odpowiedz