The Right Approach to Exceptions
Martin Nowak
dawg at dawgfoto.de
Sat Feb 18 11:36:28 PST 2012
On Sat, 18 Feb 2012 20:24:16 +0100, deadalnix <deadalnix at gmail.com> wrote:
> Le 18/02/2012 20:12, Martin Nowak a écrit :
>> Typed exception being used for local error recovery is about the same as
>> using
>> error codes but at a bigger expense. On the plus side exception can
>> carry more
>> specific error messages, which could be solved for error codes too.
>
> The problem with error code is that you have to handle all problems, or
> none. A class hierarchy of exceptions allow you to handle some type of
> errors, and not some others.
>
> At this point, I don't think we should think in terms of expansive or
> not. Exception, as it is named, are for exceptionnal cases. If not, you
> are probably using them the wrong way. And if it is exceptionnal, then
> it seems reasoanble to sacrifice some CPU cycles to handle things
> properly.
std.file.remove is a good example of how exceptions are used wrong.
It does not allow me to recover from an error, i.e. by changing the file
attributes.
Using a cenforce like translator is a much better approach IMO.
More information about the Digitalmars-d
mailing list