Problem: handling a function dependent on release mode.
Namespace
rswhite4 at googlemail.com
Fri Jul 20 14:47:52 PDT 2012
On Friday, 20 July 2012 at 21:36:59 UTC, Damian wrote:
> Trying to convert the below code to D, for the life of me I
> cannot do it :( I'm guess I need to use a template for this
> but I just cannot get my head around it. Any help please?
>
> #ifdef SFML_DEBUG
>
> // If in debug mode, perform a test on every call
> #define alCheck(Func) ((Func), priv::alCheckError(__FILE__,
> __LINE__))
>
> #else
>
> // Else, we don't add any overhead
> #define alCheck(Func) (Func)
>
> #endif
>
>
> void alCheckError(const std::string& file, unsigned int line);
Maybe something like that?
void alCheck(lazy void Func, string filename = __FILE__, uint
line = __LINE__) {
Func();
debug {
alCheckError(filename, line);
}
}
More information about the Digitalmars-d-learn
mailing list