On Monday, 22 May 2017 at 13:18:51 UTC, Eugene Wissner wrote:
On Monday, 22 May 2017 at 13:11:15 UTC, Andrew Edwards wrote:
Sorry if this is a stupid question but it eludes me. In the following, what is THING? What is SOME_THING?

    #ifndef THING
    #define THING
    #endif

    #ifndef SOME_THING
    #define SOME_THING THING *
    #endif

Is this equivalent to:

    alias thing = void;
    alias someThing = thing*;

Thanks,
Andrew

No, it isn't. THING is empty. Some SOME_THING is "*".

Emtpy macros are used for example to inline the functions:

#ifndef MY_INLINE
#define MY_INLINE
#endif

MY_INLINE void function()
{
}

So you can choose at compile time if you want inline the function or not. D is here more restrictive than C, I don't know a way to port to D.

Thanks Eugene, got it. For context, see response to Adam.

Reply via email to