Zauważyłem, że od pewnej wersji gcc działa mi coś, co teoretycznie nie powinno. Kompilator dopuszcza inicjowanie wartości zmiennej tak jak w Javie, zamiast na liście inicjalizacyjnej konstruktora. Tak więc:

class MyClass
{
int memeber = 0;
};
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Onoki: W C++11.

Zobacz sobie w standardzie sekcję 8.5.15 (Declarators, Initializers).

W praktyce jest to zaimplementowane tak, że jest taki dodatkowy konstruktor, który odpala się przed właściwym i inicjalizuje pola zainicjalizowane jako T t(value), T t{value}, T t = value. Jeśli chodzi o wydajność, to nie ma to żadnego narzutu.

Nie można tego używać do statycznych pól, które nie są "integral type" czy constexpr, bo one "mieszkają"
  • Odpowiedz
Cześć. Po ogarnięciu podstaw naszła mnie ochota na jakąś bibliotekę, mój wybór padł na Allegro 5, tylko problem jest taki, że już na etapie instalacji mnie przestawia. Korzystam z CodeBlocks i wykonuje wszystko mniej więcej tak jak tutaj: https://wiki.allegro.cc/index.php?title=Windows,_Code::Blocks_and_Allegro_5
(to mniej więcej znaczy, że nie zaznaczam tych samych plików co oni, tylko pakuje wszystkie pliki z folderu lib, bo gdybym miał do każdego projektu wyszukiwać te wszystkie pliki static, to trochę by
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@ExtendedConsciousness: Tak swoją drogą, jeśli piszesz obiektowo i tworzysz klasę np. pojazdu i potem dajesz mu metody typu SetSpeed i GetSpeed, to robisz to źle. To już nie jest programowanie obiektowe.

Jak jedziesz samochodem, to nie ustawiasz prędkości na 50km/h, ale przyspieszasz i zwalniasz. Powinnaś napisać np. metody accelerate i decelerate, które każą obiektowi przyspieszyć lub zwolnić. Prędkość natomiast pobierasz np. metodą speed() i używasz, tak jakby to
  • Odpowiedz
#programowanie #cpp #pytanie
Znajdę gdzieś na necie jakieś źródło z przykładami dobrych/wzorcowych programów/bibliotek napisanych w cpp (najlepiej w standardzie cpp11 i wyżej, chociaż niekoniecznie) ?
Chodzi mi o to, żeby można było zobaczyć jak prawidłowo powinno używać się języka w rzeczywistości, bo dajmy na to w książkach jest nacisk, raczej na pokazanie jakiś aspektów i wytłumaczenie jak działają, a nie koniecznie jak są one używane w
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@handsomejack: Przestać używać tego archaicznego IDE..
Już CodeBlocks jest lepszy.
albo VS Express (albo jakaś tam inna darmowa edycja).
albo QtCreator.
albo notepad++ i kompilacja z palca z użyciem mingw.
albo ideone w przeglądarce, bez
  • Odpowiedz
Mireczki tak sobie przypominam to, co potrafiłem w związku z #cpp i tu mam do was pytanie - czy tego odstępu linii nie da się jakoś bardziej zautomatyzować? Żeby 3x tego samego nie klepać :). Poniżej wycinek z kodu.


  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Hej, mam małe ogłoszenie, głównie skierowane dla tych z #lodz i #katowice Pewnie niejedna osoba z zazdrością czytała o zarobkach programistów i ogólnie o tym jakie profity czerpie się z samego faktu wykonywania tego typu profesji (jak np ostatni artykuł). Część z osób nawet pomyślała czy nie warto byłoby spróbować się przekwalifikować. Tutaj jednak zaczynają się schody, motywacji brak i to nie jest wcale takie łatwe jak
  • 26
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@tomic: jeśli formatujesz kod tak samo jak tą wypowiedź, to zmień branżę :P Poczytaj sobie dokumentację akapitów, łamania wierszy itepe... Dostałem oczopląsu na drugiej linijce
  • Odpowiedz
via Android
  • 1
To juz chyba zalezy tylko od nich. Wiem ze sam kiedys zakladalem ze pracujac w duzej organizacji nie kwalifikuje sie do szkolenia z certem z PRINCE2 a okazalo sie ze takich osob bylo jednak duzo i nie bylo z tym problemu, mimo ze identyczny zapis byl w opisie jak tutaj. Nie mam informacji odnosnie tej firmy. Najlepiej jak przedzwonisz.
  • Odpowiedz
Mirki, trochę mi wstyd to powiedzieć, ale mam problem z ogarnięciem takiej elementarnej rzeczy jak pętle w C++. Zanim na zajęciach z tworzenia aplikacji internetowych zajmiemy się PHP, nauczyciel zrobił nam podstawy C++ (cout, cin, if, for, tablice). O ile takie wypisanie ciągu powiedzmy 20 gwiazdek zrobię spokojnie, to przy rysowaniu prostokąta, trójkąta, itp. to już mam z tym problem. Składnie for znam - wartość początkowa, końcowa, krok.
Co bym musiał zrobić
  • 18
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Siemano Mirki! Zwracam się z pewnym zapytaniem do osób siedzących w tematach:
- automatyka
- programowanie sterowników PLC
- projektowanie grafiki do sterowania PLC
- SCADA

Odnośnie
  • 15
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Hemus: akurat robiłem studia to mgr inż a po studiach od razu na podyplomówkę ze sterowania - ale tutaj chyba lepiej i szybciej jest zrobić szkolenie ;-) drugą to już na obecne potrzeby robiłem z zarządzania projektami .. więc chyba lepiej kursy jednak robić
  • Odpowiedz
#programowanie #cpp powiedzcie mi, czy taki zapis

int* a, b;
spowoduje utworzenie wskaźnika na zmienną typu int ( czyli *a ) oraz zmienną typu int ( czyli b) ?
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mogę jednocześnie w instrukcji if zadeklarować zmienną, przyporządkować jej wartość i porównać tą wartość z inną? Coś w tym stylu (ale tak jest źle):

if (unordered_set::const_iterator hash_iterator=hash_set.find(current_hash)!=hash_set.end())
{ robię coś z iteratorem }

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

Hey programowanie.
Powiedzcie mi czy moge w jakis łatwy sposob utwozyc plik w ktorym zapisze sobie jakas liczbe a potem z niej odczytam ale w takim formacie zeby nie dalo sie go otwierać zwyklymi notatnikami i innymi edytorami tekstu w bibliotece fstream

np mam :

fstream file;
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@ExtendedConsciousness: jak ktoś nie ma dostępu do kodu źródłowego a to nie ma być jakieś toplevel security to po prostu weź to przejedź kilkoma operacjami arytmetycznymi przed zapisaniem na przykład. raczej nie będzie się nikomu chciało robić modelu odwrotnego do wyznaczenia zależności :D
  • Odpowiedz
@xudu: serio wydaje Ci się, że ktoś zaszyje mechanizm chroniący highscore w małej gierce, który jeżeli będzie podążał Twoją ścieżką implementacji ma szansę zająć więcej niż sama gra? ;-)
  • Odpowiedz
#programowanie #cpp #opengl #glut #pytanie
Mireczki, jak koncepcyjnie podejść do sytuacji kiedy chcę żeby zmienna zmieniała swoją wartość kiedy przyciskam jakiś klawisz klawiatury. Jak przyciskam ten klawisz to zmienna ma mieć np 1, a jak go nie przyciskam to 0. Zmiana przy przyciśnięciu jest oczywista, ale jak zrobić powrót po puszczeniu klawisza? Mam funkcję do obsługi klawiatury w GLUT i tam jest
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@franczi: czyli podpinasz callback na event - a więc w tej funkcji sprawdzasz, czy to zdarzenie naciśnięcia, czy puszczenia klawisza i dalej kod ASCII klawisza traktujesz jako indeks tablicy boola - reszta z opisu wyżej :)
  • Odpowiedz
#programowanie #naukaprogramowania #cpp
Jeśli znam podstawy podstaw programowanie to czy uważacie, że lepiej uczyć się na swoim własnym projekcie i doszukiwać informacji, które powinny pomóc w jego zrealizowaniu czy może jednak podążać za książką Jerzego Grębosza i dopiero po jej zrealizowaniu przystąpić do pierwszego sposobu?
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Caishen: Jedyny problem z własnym projektem, to to, że zwykle nie wie się tego, czego się nie wie. Taki paradoks. Więc jeżeli da się rozwiązać jakiś problem albo coś zaprojektować używając Twojej obecnej wiedzy, jest szansa, że nie poznasz lepszego rozwiązania, które może istnieć ("blub paradox" http://paulgraham.com/avg.html)
  • Odpowiedz