Zdravím, pustil jsem se do vyjímek a docela vy mě zajímala jedna věc. Mám kód, ve kterém může dojít k několika chybovým stavům, které mám specifikovány ve výčtovém typu (definovaném jako nový datový typ Chyby). Tedy něco takového:
enum Chyby
{
SOUBOR_NENI,
NELZE_ZAPSAT,
NELZE_UZAVRIT
};
A samotný blok catch pro zachycení mám řešen takto:
catch (Chyby e)
{
switch(e)
{
...
}
}
V literatuře jsem však našel, že je předávání lepší předávat tak, že chyba je reprezentována třídou. Čím je tento způsob lepší a v čem moje řešení horší, případně existují v mém řešení nějaké zádrhele, které by se mi mohly v budoucnu vymstít? Moc nevidím důvod zakládat prázdnou třídu, kterou pak inicializuji v throw a zachytím v catch... Díky za informace, docela by mě to zajímalo .