Portál AbcLinuxu, 26. dubna 2024 09:28

C++


Obecně

C++ je víceúčelovým programovacím jazykem se statickou kontrolou typu zaměřený na systémové programování. Podporuje datovou abstrakci, objektově orientované programování, generické programování. Je to jazyk, který umožňuje programování pomocí více forem (paradigmat). Jejich použití závisí na druhu a cíli aplikace.


Standard

Standardy: ISO/IEC 14882:1998, ISO/IEC 14882:2003 (The Second Edition, __cpluplus je stále 199711L). Standardní knihovna vznikla kompilací praxí osvědčených tříd. Proto není výsledek homogenní. Nedostatky se průběžně opravují novelizací standardu. Kód napsaný s dodržením standardu je přenositelný.

Budoucí standard jazyka je pracovně označen jako C++0X. Jeho návrh a implementace std::tr1 (The Standard Library Extensions Technical Report) jsou založené na projektu Boost C++. Boost C++ je portál věnovaný standardizaci C++, a je tak považován za šablonu pro ISO C++0X. Tvoří jej API složené z množství kvalitních konzistentně navržených knihoven (regulární výrazy, zpracování argumentů, tuple, lambda funkce, serializace dat, práce s varianty, soubory, práce s vlákny, náhodné generátory, sdílená paměť...) pro multiplatformní programování. Licence Boost C++ umožňuje použití v uzavřeném i otevřeném zdrojovém kódu.


Standardní API a ABI

Standard C++ neupravuje způsob implementace, ale chování. Proto nemusí být sestavené binární objekty přenositelné mezi různými platformami ani překladači. Řešením je dodžovat při kompilaci C++ Standard library ABI (standardu odpovídající knihovna - API + standardu odpovídající překladač - ABI).


Oblasti aplikace jazyka

Oblast, kde se jazyk využívá, je široká. Používá se pro průmyslové aplikace, lékařské aplikace, simulační aplikace, reporting, vizualizaci, v telekomunikaci, řízení, identifikaci, hrách, embedded zařízení, soft/hard realtime, v systémovém programování.


C a C++

Dva operátory + v názvu mají vyjadřovat vývoj od jazyka C k C++ (vymyslel Rick Mascitti v r. 1983), přesto standardizační komise obou jazyků se snaží o jejich přiblížení v budoucnosti. Dovednosti a techniky, jak psát v jazyku C kvalitní program, nejsou podmnožinou dovedností a technik, které vedou ke kvalitnímu programu v C++, proto je doporučeno začít přímo s C++.


Standard psaní kódu v C++

Tento standard není oficiálním, avšak jeho dodržování pomáhá v čitelnosti kódu mezi uživateli C++.


Je dobré vědět

Doporučená konvence pro přípony:

Opravdu zlé věci v C++ jsou: ukazatele, pole a makra. Pokud můžete, vyhněte se jim pomocí referencí, chytrých ukazatelů (auto_ptr, shared_ptr, weak_ptr), iterátorů, inline funkcí, šablon, RAII. Pokud se jim nevyhnete, pak je použijte.

Téměř oficiální stránky pro C++ FAQ: www.parashift.com

Diskuzní fóra věnované standardu C++:

Fóra věnovaná použití C++ v *nixu, g++:

Překladače pro Linux.:

IDE pro Linux:

Debuggery pro Linux:

Komplexní testy zdrojového kódu:

Beautifier pro půvabnější kód:

Doplňování kódu ve Vim v7:

Abecední seznam knihoven: www.trumphurst.com

Seznam GUI knihoven pro C++: guitool

Nástroj pro tvorbu dokumentace: Doxygen

Nástroj pro parsování chybových hlášení překladače o šablonách: STLFilt

Parsery:

Interaktivní interpret C++:

Stránky komise posuzující standard C++: JTC1/SC22/WG21 - C++.
Komisi tvoří skupina dobrovolníků, z nichž někteří jsou zaměstnanci firem (Intel, IBM, Microsoft, Sun, AT&T...), které díky zpětné vazbě mají vliv na rozvoj standardu. Členem komise je i Bjarne Stroustrup, který navrhl jazyk C++. Hlavní diskuze se odvijí v síti Usenetu, zejména ve fóru comp.std.c++. Symbol C++ není ochrannou známkou, není chráněn autorskými právy, nikdo jej nevlastní. Jeho význam a definice pouze podléha ISO/IEC 14882.

Česká nebo lokalizovaná literatura:

Dokument vytvořil: elviin, 13.2.2006 18:39 | Poslední úprava: xkucf03, 10.9.2014 16:54 | Další přispěvatelé: stps, Tomáš Medek | Historie změn | Zobrazeno: 4489×

Další pojmy: byte - Bytecode - C - C++ - CAD - cairo - Canonical

Filtr: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.