[cairo] Re: cairo c++ bindings
Max Vasin
max.vasin at gmail.com
Mon Nov 28 12:02:30 PST 2005
Mike Hearn wrote:
> On Mon, 28 Nov 2005 10:33:02 +0100, Murray Cumming wrote:
>
>>So, this remains a highly theoretical performance issue, but one that
>>could easily be tested.
>
>
> Right.
>
>
>>If it is a problem, then the proposed disabling of exceptions would
>>mostly eliminate it, by leaving us with just one extra
>>if(exceptions_enable) for each function call. I can't imagine what you'd
>>be drawing for which that would be a significant amount of work.
>
>
> Even better, make two classes (maybe using a template? I'm no C++ expert)
> which have identical code except with a different initialization value for
> the constant "exceptions_enable", that way the dead code elimination pass
> will delete the check entirely and you have optimal code. Then the
> programmer can just switch between them using "new CheckedCairo" or "new
> Cairo" for instance.
Even better: make a single class template with error handling policy as
template parameter. No dead code at all. And programmer won't be limited
to error handling policy used by wrapper.
--
WBR, Max Vasin.
More information about the cairo
mailing list