V následujícím příspěvku se podíváme na lepší alternativu za git pull
.
Není pochyb o tom, že existuje spousta cest, jak zjistit, zda je řetězec prázdný. Kterou z nich ale zvolit a proč? To se dozvíte v dnešním příspěvku.
Dnes se podíváme na to, zda je bezpečné volat delete
na nulový ukazatel.
V tomto novém seriálu vždy ukáži kód, který je v určitém ohledu nevhodný, a ukážeme si, jak jej vylepšit. Začneme se získáním prvku ze standardních kontejnerů v C++ po ověření jeho existence.
Minule jsme si ukázali, proč nezahrnovat implementaci do hlavičkových souborů. Dnes se podíváme na to, jak urychlit překlad použitím tzv. dopředných deklarací.
V příspěvku se dozvíte, proč dávat přednost umisťování implementace do .c
/.cpp
souborů, nikoliv do hlavičkových souborů.
V dnešním díle seriálu o chybách v návrhu se podíváme na chyby, které objektově orientovaný kód degradují na procedurální úroveň. Zaměříme se na porušování principu "Tell, don't ask", který říká, že byste měli objektům říkat, co po nich chcete, a nikoliv se jich vyptávat a pak činit rozhodnutí za ně.
O možnosti vytváření aliasů na typy pomocí konstrukce typedef
ví zřejmě každý programátor v C a C++. Co je však méně známé, tak je, že v C++ si můžete vytvářet aliasy na jmenné prostory. Tento příspěvek vám ukáže, jak na to a vysvětlí, k čemu se to může hodit.
C++ umožňuje, abyste u těla funkce, která obsahuje pouze try-catch blok, vynechali okolní složené závorky ("{"
a "}"
). V tomto příspěvku se podíváme na to, jak to vypadá a k čemu je to použitelné.
V minulém díle jsme se bavili o situacích, kdy má třída příliš mnoho odpovědností. V dnešním díle si ukážeme, jak velké problémy skrývá na první pohled příjemný a jednoduchý návrhový vzor Singleton a proč jej tak mnoho programátorů zneužívá v situacích, kde nemá co dělat.