Symulator pożaru lasu – założenia i pierwsze kroki

Na studiach spotkasz się z wieloma typami zajęć. Są laboratoria, są ćwiczenia i wiele innych. Spośród wszystkich najbardziej lubię projekty. Mam wyznaczone zadanie, które muszę wykonać do określonego dnia. I nikt mnie nie zmusza do tego aby użyć konkretnego sposobu rozwiązania problemu. Kłopotem nie jest także czas. Co prawda istnieją odgórnie …

Uniform Initialization – prostota wypełniania struktur danych

Programując w C++, z pewnością wiesz jak inicjuje się zmienne. Nie jest to czynność skomplikowana. Trochę więcej problemów zachodzi kiedy musisz zainicjować tablicę lub jakiś kontener. Stosujesz wtedy pewnie pętlę for. Jeśli musisz dodać kilka lub kilkanaście elementów do kontenera vector, stosujesz metodę push_back, wywołując ją ręcznie albo w pętli. …

weak_ptr – inteligentne wskaźniki

Omówiliśmy unique_ptr i shared_ptr. Jesteśmy bardzo blisko końca naszej fascynującej wędrówki przez świat inteligentnych wskaźników. Został nam do omówienia ostatni gatunek. Weak_ptr. W tłumaczeniu na polski byłby to „słaby wskaźnik”. Czym może się charakteryzować? Czy potrzeba nam w programowaniu słabeuszy? Tytułowa „słabość” weak_ptr polega na tym, że nie posiada on …

shared_ptr – Inteligentne wskaźniki

W poprzednim artykule zajmowaliśmy się pierwszym z „inteligentnych” wskaźników – wskaźnikiem unikalnym (unique_ptr). Unique_ptr jest bardzo fajnym wskaźnikiem, ale nie w każdej sytuacji możemy skorzystać z jego dobrodziejstw. Czasami potrzebujemy „współdzielić” obiekt i jego własności między dwoma lub więcej miejscami w programie. Załóżmy, że tworzymy aplikację obsługującą przychodnię. Mamy trzy rodzaje …

unique_ptr – inteligentne wskaźniki

Wielokrotnie tworząc jakąś aplikację w C/C++ miałeś pewnie problem ze wskaźnikami. To jest jedna z największych zalet C++, a jednocześnie najgorsze przekleństwo. Wskaźniki pozwalają na bezpośrednią kontrolę nad przydziałem pamięci, a jednocześnie ich użycie może spowodować powstanie trudnych do wykrycia błędów. Osoby rozwijające standard C++ wiedziały o tym problemie. Po …