Pary i krotki w C++11

Standard C++98 wprowadził pierwszą klasę pair do zarządzania parami wartości, a standard C++03 klasę tuple do obsługi krotek. W standardzie C++ obie zostały rozbudowane. Klasa pair Klasa pair służy do przechowywania dwóch wartości. Trkatuje je jako jedność (jeden zestaw danych). Znajomość tej klasy jest bardzo przydatna, ponieważ używana jest ona w wielu miejscach Biblioteki Standardowej….

Python jako narzędzie budowania projektu w C++

Nowoczesny C++ ma wiele narzędzi służących do wspomagania jego budowy. Jednym z takich narzędzi jest język Python, który z roku na rok pnie się coraz wyżej w rankingach popularności. Python jest językiem skryptowym co go predystynuje do używania w projektach korzystających z C++. Budowa struktury projektu Można ręcznie tworzyć katalogi oraz szablony plików składające się…

Język Java a C++. Czy możliwa jest szybka „przesiadka”?

Każdy, kto miał kontakt z C++ oraz Javą wie, jak często podobny jest kod pisany w tych dwu językach. Wydaje się zatem, że przesiadka z jednego na drugi jest dla programisty łatwa i bezproblemowa. Czy tak jest w rzeczywistości? Jako programista mam doświadczenie w obu tych technologiach. W obu pracowałem (bądź pracuję). I mogę stwierdzić,…

O wyższości kompilatora nad preprocesorem

C++ od początku odziedziczył wiele elementów swojego poprzednika – języka C. Preprocesor wraz z dyrektywami są jednym z takich elementów. O ile we wcześniejszych wersjach C++ często używano preprocesora, tyle w nowych standardach (szczególnie od C++98/03) zaczęło się to zmieniać. Język zaczął intensywnie zmieniać swoje oblicze i preprocesor zeszedł na dalszy nieco plan. Tym niemniej…

Intelignetne wskaźniki w C++11 – część 2

W poprzedniej części zajmowalismy się inteligentnym wskaźnikiem unique_ptr. Teraz przyszła kolej na dwa pozostałe wskażniki, zdefiniowane przez klasy shared_ptr oraz weak_ptr. Klasa shared_ptr Część obiektów używanych w programie posiada jednego właściela i jeden wskaźnik. Są jednak takie, które tych wskaźników mają wiele, aby były widoczne z różnych miejsc. Te odnośniki do obiektu z różnych miejsc…

Intelignetne wskaźniki w C++11 – część 1

Każdy, kto choć pobieżnie zetknął się z językiem C lub C++ musiał mieć styczność także z elementem tych języków programowania, jakim są wskaźniki (ang. pointers). Te specjalne zmienne służą do przechowywania adresów innych zmiennych. Jest to bardzo przydatny element języka. Jednak w pewnych sytuacjach wskaźniki mogą być jednak niebezpieczne. Dobrze to widać w przypadku zarządzania…