@Pierwiastek_z_Czech: To nie jest tak, ƶe jest zawsze niepoprawne.

Niepoprawne jest gdy uƶywasz tego w plikach nagłówkowych, zdradziecko zmieniając znaczenie programu uƶytkownika Twojej biblioteki. Równie dobrze byś mógł zostawić otwarty namespace.

Na poziomie funkcji (ew. co najwyƶej plików .cpp) jest to imo dopuszczalne, jeśli upraszcza kod. Np jeśli piszesz przeładowanie
  • Odpowiedz
Treść przeznaczona dla osób powyżej 18 roku życia...
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#cpp

#programowanie

Witam ponownie mirki, nawiązując do poprzedniego mojego posta jestem aktualnie w trakcie nauki z poleconej przez was książki symfonia c++ ale mam jedno pytanie, mianowicie w książce nie jest sugerowane w jakim środowisku kompilować kod, na zajęciach używaliśmy do tego celu dev c++

ale doszedłem do wniosku, że chyba najwyższa pora nauczyć się obsługiwać coś innego i stąd moje pytanie jakie środowisko polecacie? Słyszałem, że visual
  • 11
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Jonarz: kompilator w devie to jest śmiech na sali, potrafi takie kwiatki przepuszczać, że głowa mała. Poza tym nie jest aktualizowany już milion lat. No i brak podstawowych funkcji typu code completion
  • Odpowiedz
@Jonarz: Szybkie, przenośne, potęƶne, konfigurowalne, darmowe.

Szybkie - nie czekasz kilku sekund na przejście do pliku nagłówkowego z deklaracją

przenośne - linux/mac/windows? Wszędzie działa prawie tak
  • Odpowiedz
@chilling: w main w pierwszych dwóch pętlach tworzone są wątki: 4 konsumentów i 8 producentów , (void)&konsument i (void)&producent to wskaźniki na funkcje które te wątki będą wykonywały. w kolejnych dwóch pętlach wywoływana jest funkcja pthreadjoin która czeka aż podany wątek się wykona, czyli w tym momencie główny wątek stoi.

każdy wątek wykonuje pętle, w kolejnych iteracjach pętli jest blokowany mutex, jeśli inny wątek będzie chciał zablokować mutex będzie
  • Odpowiedz
Tak się ostatnio zastanawiałem czy jest szansa wyskoczyć z własnym biznesem robienia webdevu w C++. W sumie jak ktoś ogarnia to tak samo szybko się zrobi jakiś system jak pythonie czy php a jakby nie patrzeć to to szybsze będzie :) Ma ktoś jakieś doświadczenia?

#programowanie #cpp
  • 19
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@esio: No właśnie sęk w tym, że nie widzę powodu dla którego miałoby być droższe, pobierz, zapisz w bazie, coś policz, zawołaj jakiś szablon i już.

//edit

A to już nie ten C++ co kiedyś, że pamięć uciekała, fora do iterowania mapy pisało się na trzy linijki itp.
  • Odpowiedz
@WolverinePL: Są frameworki do tworzenia stron w C++, ale to podejście nie ma najmniejszego sensu. Dlaczego?

- Pisanie testów jednostkowych w C++ to droga przez mękę (zwłaszcza w źle napisanych systemach)

- Brak refleksji, przez co IoC przez DI jest dość
  • Odpowiedz
#windows #msvc #microsoft #programowanie #crt #cpp

Trafiliśmy na ciekawego buga w CRT. W skrócie crash z błędem "0xC000001D: Illegal Instruction" jest spowodowany dość głupim przeoczeniem przez MS. Mianowicie gdy procesor obsługuje zestaw instrukcji AVX i tak się "przedstawia" to będzie ten zestaw instrukcji używany. Niby ok, ale AVX nie działa na win 7 bez sp1 i starszych, a tego już nie
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Warto wspomnieć, że support dla Win7 RTM został zakończony w marcu 2013 więc pewnie nawet microsoft nie poprawi tego błędu tak szybko ;p
  • Odpowiedz
Mirki, znacie jakieś przypadki, w których -Wall dodaje ostrzeżenia przy linkowaniu, czy jest to tylko flaga kompilacji?

EDIT: Może rozszerzę pytanie: czy są w ogóle jakieś flagi, które są używane zarówno przy kompilacji, jak i konsolidacji? Wszak gcc wykorzystuje do tych dwóch operacji dwa różne programy...

Jeśli tak, to jakie?

#programowanie #cpp
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Onoki: Flagi optymalizacji mają wpływ na kod wynikowy, wobec czego przy odpowiednio błędnym inkludowaniu kod w -O0 się skompiluje, zlinkuje i będzie działał poprawnie, a w -O2 juƶ nie
  • Odpowiedz
@Onoki: Wyszło mi przed chwilą, że jak dasz flagę -g (dodaje info o debugowaniu), to jak ld nie będzie mógł znaleźć jakiejś funkcji to uprzejmie pokaże też w której lini kodu źródłowego jest odniesienie do szukanej nazwy (a nie tylko przesunięcie w sekcji .text binarki)
  • Odpowiedz
Czy ktoś zna takie narzędzie które pozwalało by zarządzać malutkim projektem, dodawać to do, zgłoszenia błedów, potrafiło łączyć się i kojarzyć zapytania z commitami czy dało się tam zapisywać wyniki testów i wspierało c++ oraz było darmowe i proste w obsłudze?

#cpp #programowanie
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#programowanie #cpp

Mireczki mam pewien problem, dylemat. Powiedzcie mi: kiedy przy deklaracji zmiennej/obiektu rzucać go na stos a kiedy na stertę? W zasadzie nie widzę wiekszych różnic. Gdzieś, kiedyś, jakoś, ktoś napisał "ee, lepiej umieść cośtam na stercie bo jeszcze na stosie Ci się nadpisze albo straci zasięg i będzie" - jak skoro stos nie może się nadpisać? Poza tym nawet jeżeli zadeklarujemy coś w funkcji na stercie
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#cpp

#programowanie

Siema mirki, jest mi w stanie polecić ktoś dobrą książkę do nauki cpp? na zajęciach (policealna ti) skończyliśmy omawiać cpp na tablicach wielowymiarowych, w ramach, że mam teraz trochę wolnego chciałem samemu "pójść dalej". Słyszałem, że Thinking in c++ jest dobrą książką pytanie brzmi czy nie będzie dla mnie zbyt zaawansowana na obecny poziom wiedzy ;)
  • 19
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@StephanieHwang: dokładnie. Symfonia -> (1) praktyka -> problem -> stackoverflow -> uzupełnianie wiedzy -> (1). Dla przykładu udało mi się w miesiąc od zera napisać grę w C# (klon invaders). Przerobiłem jedną książkę i zacząłem pisać.
  • Odpowiedz
@ronkad: skoro c++ to można zrobić klasę, średnia będzie przechowywana w jakimś polu i uaktualniana przy wstawianiu nowego elementu do listy. Sporo można tu poprawić, współczuję prowadzącej w takim razie :|
  • Odpowiedz
gcc 4.6.4 zwariował na takim kodzie:

auto interface = std::make_shared>();

no to szukam, szukam, szukam i trafiam na takie coś w windows.h:

#
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@bartoneczek: Kaƶdy wątek ma własny stos. Rozpoczęcie innego wątku nie wpływa na twórcę i twórca kontynuuje dalej. W takim wypadku miałeś rzucony wyjątek bez ƶadnego catcha, więc zostało zawołane

std::terminate
  • Odpowiedz
Programiści. Powiedzcie mi. Co mogę dodać do zwykłego programu BlackJack w kości?

Taką oto wiadomość dostałem:

Aby program spełniał kryteria projektu zaliczeniowego niezbędne jest dodanie funkcjonalności związanej z analizą i ustalaniem strategii gracza oraz komputera. Przede wszystkim strategie powinny być konfigurowalne. Niedopuszczalne jest rozwiązanie, w którym decyzje są częścią kodu źródłowego. Ponadto dla każdej z dostępnych strategii powinny być prowadzone statystyki, które pozwalałyby komputerowi dostosowywać się do wyborów gracza na podstawie historii
  • 20
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@vokus: (#) Niee. Poczekam, co on mi napisze. Zaproponowałem, iż napiszę ten program jako gra w karty, bo już nie wiem, co mogę zrobić jeszcze. Naprawdę. Nie wiem, jak mogę zmienić ten program tak, by zawierał on jakieś zmiany w algorytmie w trakcie grania.... No idea..
  • Odpowiedz
@GrabkaMan: co "niee" :D ? co do zmian no to właśnie piszę co możesz zrobić. No ale jak wiesz lepiej, albo zapytasz się gościa to po co pytasz na mirko :D ? Jak dla mnie to koleś napisał dość jasno co masz zrobić. gracz sam ustala strategie przy każdym ruchu, komputer na podstawie historycznych danych określa czy lepiej jest wybrać ruch T lub N ( przykładowo TTN miało 60 %
  • Odpowiedz