Odpovídáte na názor ke článku SEH v Linuxu (C++).
[6] Pokud jde o standardní výjimky, tak v C++ máme destruktory, takže ten blok finally tam vůbec nemusí být, protože se použije právě nějaký chytrý ukazatel. A to je důvod, proč finally C++ nemá. Nicméně v normě C++11 jej lze elegantním způsobem nahradit: http://novacisko.blog.root.cz/2012/06/06/nahrada-finally-c-11/
Pokud jde o SEH, tak ten v originálu (ve Windows) finally má. Kdybyste četl článek, tak víte, že tamn píšu, že mé řešení SEH v Linuxu finally neobsahuje a nechávám jeho implementaci jako námět k přemýšlení. Jedna z možností je ta, že jsem zavedl funkci __seh_throw, která na konci chráněného bloku __seh_try vyvolá umělou výjimku a takže blok __seh_except se provede vždy.
Jenom připomínám, že zpracování signalu nepatří do standardní výbavy C++. Už proto, že jsou platformy, kde signály nejsou. Stejně tak je nutné se dívat na mou emulaci SEH. Jde jen o nadstavbu, nejde o vylepšování vlastního jazyka.
Intenzivně se zabývám programováním zejména v jazyce C++. Vyvíjím vlastní knihovny, vzory, techniky, používám šablony, to vše proto, aby se mi usnadnil život při návrhu aplikací. Pracoval jsem jako programátor ve společnosti Seznam.cz. Nyní jsem se usadil v jednom startupu, kde vyvíjím serverové komponenty a informační systémy v C++
Přečteno 57 608×
Přečteno 27 722×
Přečteno 26 403×
Přečteno 24 367×
Přečteno 22 864×