konecne poriadny piatkovy flame na temu "to C or nottoC"Was:Vyctovy typ v C

Pavel Troller patrol@sinus.cz
Pátek Srpen 31 16:08:53 CEST 2007


Zdravim,
>  
> Ad headry)
> K tomu se dari snad jen jedine, proc to delat jednoduse, kdyz to jde
> slozite.
> Tim, ze je header textovy a zpracovava ho preprocesor (pri prekladu kazdeho
> souboru znovu)
>  tak preklad
> rozsahlejsiho projektu je temer utrpeni (ano, ze vsech headu
> se vytvori jeden obludny textovy soubor, ktery se finalne kompiluje).
> Takze potom se resi takove veci, jako header cache atd.
> S timto take souvisi skutecnost, ze obj soubory nejsou samopopisne
> a spatna verze headru a obj me stala nejedno odpoledne.
> Je to dano tim, ze C/C++ je pouze "nadstavba" asembleru, tam takovemto
> pripade je system headru velmi vyhodny (pascal tuto situaci resi velmi podobne).
>  
> Slavek

Nechci se nejak moc C/C++ zastavat, ale vite o precompiled headerech ? To uz
umi kazdy lepsi compiler vcetne gcc/g++. Dobu kompilace velkych projektu (napr.
KDE v Linuxu) to zkracuje opravdu vyrazne - o desitky procent.
  Synchronizaci spravneho headeru a obj (nejcasteji knihovny) lze zajistit
v headeru vynucenym linkovanim symbolu se jmenem obsahujicim cislo verze.
Padne-li linker na nevhodny obj, symbol neni nalezen a neslinkuje se to, coz
se resi nesrovnatelne lepe nez kdyz se to slinkuje, ale vysledna app pak pada.
Samozrejme to neni automaticke, vyzaduje to praci navic, ale asi je te prace
pak mene nez reseni vyse uvedenych problemu.

S pozdravem Pavel Troller




Další informace o konferenci Hw-list