Jste zde

C++

Varování o nepoužitém objektu v C++ i přesto, že v kódu je

Nedávno jsem narazil na zajímavou situaci, kdy mi překladač u C++ kódu hlásil varování, že vytvořený objekt není nikde použitý, ale přitom se na něm hned na dalším řádku volala metoda. Pojďme se společně podívat na onen kód a na to, zda měl překladač pravdu.

Reference v C++ jsou vždy konstantní

Aneb proč nedává smysl říkat "x je konstantní reference" a že tím programátor ve skutečnosti myslí "x je reference na konstantu".

Zajímavosti z C++: Když přítomnost závorek hraje roli

Ukážeme si dva případy, kdy přítomnost kulatých závorek v C++ na první pohled působí zbytečně, ale přitom má značný vliv na význam kódu. A nebojte, nebude se jednat o uzávorkování z důvodů priority operátorů :).

Match vs search u regulárních výrazů v C++ a Pythonu

V příspěvku se podíváme na rozdíl mezi operacemi match a search u regulárních výrazů v jazycích C++ a Python. Především si však ukážeme záludnost, ve které se operace match ve zmíněných jazycích liší. Velmi stručně se podíváme i na pár dalších jazyků.

Zajímavosti z C++: Reference na funkce a na pole

Možnost vytvářet v C a C++ ukazatele na funkce či pole je poměrně dobře známá. V C++ však lze mimo ukazatelů vytvářet i reference na funkce a pole. V příspěvku se krátce podíváme na to, kdy se to může hodit.

Méně známé novinky v C++11 a C++14

V příspěvku bych chtěl popsat některé novinky v C++11 a C++14, ke kterým jsem se nedostal ve svých předchozích příspěvcích Co je nového v C++11 a Co je nového v C++14.

Typické chyby při používání chytrých ukazatelů v C++

V příspěvku bych chtěl poukázat na některé typické chyby, kterých se programátoři dopouští, když začínají v C++ pracovat s chytrými ukazateli.

Proč v C++ preferovat using před typedef

Od C++11 přibyly tzv. typové aliasy (using TypeAlias = OriginalType;). Jedná se o alternativu pro klasický typedef. V příspěvku uvedu několik důvodů, proč od C++11 na typedef zapomenout a využívat pouze typové aliasy.

Proč v C++ využívat specifikátor override

Od C++11 je k dispozici specifikátor override. Lze pomocí něj označit virtuální metodu, která předefinovává (anglicky overrides) virtuální metodu z nadtřídy. V příspěvku uvedu dva důvody, proč je dobré všechny takovéto metody tímto specifikátorem označovat.

Zajímavosti z C++: size_t vs std::size_t

Možná jste se již setkali s C++ kódem, kde se místo size_t využívalo std::size_t. V tomto krátkém příspěvku se dozvíte, jaký je v nich rozdíl a který z nich používat.

Stránky

Přihlásit se k odběru RSS - C++