prawdopodobnie jestem imbecylem ale nie rozumiem co się do mnie tutaj mówi. o ile domyslam sie, ze powinienem wrzucic pliki z folderu include do "katalogów plików nagłówkowych" w VS, o tyle nie wiem jak polaczyc z projektem bibliotekę z koncowka .a. Google jakos mi nie chce podsunac rozwiazania ani nawet powiedziec czym wlasciwie jest taki plik ( ͡° ʖ̯ ͡°) podpowie ktos?
#cpp #naukaprogramowania
Pobierz
źródło: comment_1623857318ns0p1WgnCA70SQSLmTKwZY.jpg
@klamkaodokna: W sumie sam to znalazłem, nie tylko ty masz zastrzeżenia:
https://github.com/HenryRLee/PokerHandEvaluator/issues/11

Generalnie opis jest po linuxa, ale jeżeli zbudujesz to pod windowsem to wygeneruje po prostu liba.
ta linia w cmaku definijue statyczną bibliotekę:

addlibrary(pheval STATIC


Skoro używasz Cmaka to może olać bezpośrednie podlinkowanie w linkerze i po prostu dodać ją w swoim projekcie w CMakeLists. W tym samym pliku masz zresztą przykład w linii 89:

targetlinklibraries(cexample
@klamkaodokna: Od linii 100 autor przygotował instalację biblioteki dzięki której można później odwoływać się do niej porzez https://cmake.org/cmake/help/v3.20/command/find_package.html Niestety ograniczył ją do systemów Unixowych. Teoretycznie możesz spróbować zakomentowac tego ifa i spróbowac wywołac cmake install po zbudowaniu. W praktyce przyniesie to niewielkie korzyści ze względu na chaos lokalizacji bibliotek pod Windowsem.

Jako, że i tak musisz to zbudować to na początek po prostu dodaj źródła do swojego projektu, odwołaj się do
#anonimowemirkowyznania
Wie jakas dobra duszyczka jak w C++ w Linuxie wyczyścić terminal, cos jak system("cls") w windowsie ?

Dwie godziny poszukiwań i nadal nic ;((
#programowanie #cpp #c++ #informatyka #technikinformatyk

Kliknij tutaj, aby odpowiedzieć w tym wątku anonimowo
Kliknij tutaj, aby wysłać OPowi anonimową wiadomość prywatną
ID: #60bfad3ef770ef000bed565f
Post dodany za pomocą skryptu AnonimoweMirkoWyznania ( https://mirkowyznania.eu ) Zaakceptował: karmelkowa
Przekaż darowiznę
Przypominam o istnieniu wykopowego serwera Discordowego dla maniaków inżynierii wszelakiej - programowanie, elektronika oraz druk 3D. Mamy ponad 240 osób, dzielimy się swoimi projektami oraz mamy specjalne kanały dla każdego kto chce prowadzić własny dziennik swojego projektu.

Zapraszamy serdecznie! ( ͡° ͜ʖ ͡°)

https://discord.gg/Tuu6ZQUdSZ <== LINK DO DISCORDA

#elektronika #arduino #mikrokontrolery #druk3d #programowanie #arduino #esp32 #esp8266 #stm32 #cpp #c
Pobierz
źródło: comment_1623148759A4fxRM8iuHwZtBiOxwO2pE.jpg
@pszemczyslaw: to jest komunikator połączony z czatami, kanałami i innymi genialnymi featurami które pozwalają zarządzać community. W każdym kanale masz przypięte posty i opcje wyszukiwania tak więc nic nie ginie (jak na grupach FB bywa).
Cześć,

W programie mam dwa wątki, które pracują na porcie szeregowym (RS485) pod #linux. Jeśli dobrze się orientuję, to na płytce (customowa), którą posiadam jest transmitter, który powoduje, że komunikacja nie jest full-duplex. W związku z czym używam select(), do sprawdzania czy jest możliwy zapis / odczyt. Problem polega na tym, że od czasu do czasu ramka jest źle odczytywana i ucinane są końcowe bajty, choć wiem że urządzenie wysyła ramkę
@Parseval Dlaczego masz dwa wątki? Select dostaje readfds i writefds, sprawdzasz który jest ready (FDISSET) i wykonujesz daną operację.

Aha, i skoro to linux, to może epoll() zamiast select().

Wtedy podobnie - masz eventy. EPOLLIN | EPOLLOUT. event
wait() daje Ci liczbę eventów i przetwarzasz w pętli tyle ile ich liczba wynosi.
stwierdziłem że for fun sprawdze, czy moge zmienić adres zmiennej, nic konkretnego ale chciałem poznać kolejne granice języka #cpp
i pytanie, czemu nie mogę zrobić czegoś takiego:

int x=5;
int y;
&y=&x

i tym sposobem uzyskać referencje
jak pisałem, nie rozważam w konkretnym celu, tylko dla zabawy, więc nie piszcie o istnieniu:
int& y=x;
#programowanie #naukaprogramowania
Hejka Mireczki, jak mogę w bibliotece zapisać coś na samym początku pliku bez podmieniania zawartości? Np.:

int main()
{
FILE* pFile;
pFile = fopen("test.txt", "w");
fputs("apple", pFile);
rewind(pFile);
fputs("sam", pFile);
fclose(pFile);
}

Wychodzi "samle" a chciałbym, żeby wyszło "samapple".

#cpp #programowanie
Pamiętam jak kiedyś chciałem udzielać korków z informatyki i programowania.

Zgłosiła się pierwsza dziewczyna, zakres: podstawy programowania w C++.
Dziewczyna tydzień przed egzaminem przyszła do mnie i myślała, że zdążymy ogarnąć to czego oni się uczyli przez cały semestr.
Jedyne co umiała to:
- zacząć plik c++ od #include
- using namespace std;
- int main () { return 0 }

Brak wiedzy na temat typów danych, nie wiedziała co to zmienne,
Czy tylko dla mnie język C++17/20 jest dużo bardziej skomplikowany od Rusta?

Niby wiele elementów w nowszych wersjach służy uproszeniu kodowania, ale i tak patrząc na niektóre otwartoźródłowe projekty w C++ powoduje to, że część kodu jest napisana przy użyciu różnych stylów(niekiedy używany jest unique_ptr a niekiedy zwykły etc.).

#rustlang #cpp
@qarmin: to jest prawda. Niestety każdy projekt w C++ używa własnych konwencji i bibliotek. Do tego większość dużych firm (Google: Abseil, Facebook: folly) mają własne biblioteki standardowe, bo ta z C++ jest stara/niereformowalna/za mała. Rust ma tą zaletę, że jest młody więc nie trafimy na bibliotekę z lat 90 + dostarcza podstawowe building blocki. Każdy w Ruscie wie, że do opcjonalnych wartości używa się Opt czy read only stringi przepycha się
@qarmin: No jest. C++ ma 40lat bagażu, zachowuje kompatybilność wsteczną i ma filozofie by pozwalać na wszystko programiście nawet jak ten chce się #!$%@?ć.

Rust ma przemyślany design, wychodzi z słusznego załozenia że większość programistów to idioci i nawet taki feature jak domyślne argumenty funkcji czy przeciążanie to w ich rękach niebezpieczne narzędzie, wymusza dobre praktyki przez statyczną analizę kodu i zazwyczaj jest jest sposób na zrobienie czegoś poprawnie. O wiele
Zastanawiam się, czy robi się taką paranoję, żeby rozdzielać funkcje kopiujące/przesuwające elementy gdzieś do kontenera lub do zwykłego pola struktury na osobne funkcje dla prostych typów (np. int), które przyjmują parametr zawsze przez kopię i na funkcje, które przyjmują "cięższe" obiekty przez forwarding reference? Jak patrzyłem na prototyp np. vector::push_back() to czegoś takiego chyba tam nie ma.


#programowanie #cpp
@Feargan: bez sensu, jak masz konstruktor w headerze to i tak optymalizator zoptymalizuje konstruktor w miejscu wywołania. To co zyskujesz to zwiększony czas kompilacji. Jako programista C++ powinieneś patrzeć na ten aspekt, bo łatwo takim # include zarazić cały codebase
Potrzebuję zrobić w CPP ekwiwalent funkcji console.log() albo var_dump()...

Zastanawiam się jak dokonać konwersji tablicy wartości o zakresie uint8 do tablicy znaków reprezentujących te wartości.

> wartość 128 do "128".


Najlepiej skleić je przecinkami, a więc
uint8 myArray[3] = {100, 101, 102} do "100, 101, 102"

Dane te będą stanowić odczyty sensorów podpiętych do ESP32 i wystawiane jako wartość do odczytu przez BLUETOOTH Low Energy.

Chyba powinienem użyć itoa w pętli, ale
@Iribell: Trochę pogrzebałem, jeśli rozumiem o co ci chodzi to działa coś typu

std::array b = {rational(1), rational(2), rational(3)};
ale poza tym inny problem zauważyłem w funkcji rational& operator/= - wymuszasz tam żeby licznik nie był zerem, a zgaduję, że chodziło o mianownik
Cześć,

Mam program, który posiada część real-time i non-real-time. Używam systemu czasu rzeczywistego Xenomai (pod #linux). Sam Xenomai ma wrappery dołączane linkerem, które nadpisują wszystkie klasyczne funkcje linuxowe. Mój program składa się z wielu bibliotek z czego jedna powinna mieć owrappowane funkcje. Niestety dołączenie flag linkera dla tej biblioteki powoduje owrappowanie funkcji całego projektu. Co robię źle, że nie zostaje to rozdzielone?

CMake dla tej biblioteki: https://pastebin.com/qsFwmBgV
Część CMake projektu -
, a więc self ginie dopiero po return?


@s_theCapt: tak, ale po tym usunięciu ptr dalej odpalają się destruktory zmiennych lokalnych będących przed ptr. Czy to jest legalne: szczerze nie wiem, na pewno jest to brzydkie. Przykładowo wystarczy, że ktoś bez dogłebnęgo czytania kodu doda jakiś mutex przy użyciu std::lock_guard na samym początku funkcji.


@lionbest: tak, nie doczytałem
mireczki Wy moje kochane spod tagu #cpp
W jaki sposób najprościej zwizualizować wynik działania algorytmu mrówkowego, żeby wyglądał jak na zdjęciu? muszę przenieść kod z #python na c++, bo coś się prowadzącemu nie podoba. Problem w tym, że nigdy zbytnio w tym języku nie pisałem. O ile nie miałem kłopotów w przepisaniu tego, żeby wypluwało wynik w konsoli, tak jeśli chodzi o wizualizacje, to jestem w dupie. Mogę korzystać z bibliotek trzecich.
Pobierz
źródło: comment_1620220531OljliMfx1aOmNv8MhytcYR.jpg
Siema programistyczne świry, mam problem z zapisaniem drzewa binarnego do pliku w #cpp. Robię projekt na studia, w którym piszę program do kompresji plików tekstowych za pomocą kodowania Huffmana i jestem w kropce xD Do skompresowanego pliku muszę dołączyć drzewo, aby poprawnie zdekodować plik, ale nie wiem jak to zrobić w taki sposób, aby można było jednoznacznie je odtworzyć przy dekompresji. Psycha mi siada, bo w internecie znalazłem same ogólniki, które
Pobierz
źródło: comment_1620201756CexEEclcmzvWsXJZHNc8xY.jpg