discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: data type polymorphism


From: Riccardo Mottola
Subject: Re: data type polymorphism
Date: Tue, 24 Mar 2015 22:49:28 +0100
User-agent: Mozilla/5.0 (X11; Linux i686; rv:35.0) Gecko/20100101 Firefox/35.0 SeaMonkey/2.32.1

Hi Scott,

Scott Christley wrote:
Hi Riccardo,

Maxthon is not suggesting to pick a type during compile time, but instead use a 
macro to generate both cases in your code.  For your app it would be something 
like this where the macro has the code, and the C preprocessor is used to 
insert the code.  In reality you still have duplicate code.  I was aware of 
this solution but was interested to see if there was any alternatives.


#define PROCESS_IMAGE(DATATYPE) \
              DATATYPE    *srcData; \
              DATATYPE    *destData; \
              DATATYPE    *p1; \
              DATATYPE    *p2; \
              // etc.


   if ([srcImageRep bitsPerSample] == 8)
     {
        PROCESS_IMAGE(unsigned char)
     }
   else if ([srcImageRep bitsPerSample] == 16)
     {
        PROCESS_IMAGE(unsigned short)
     }


Oh thank you for explaining it. This is feasible for short pieces of code, but if you have a hundred of lines, either you split it up in smaller makro-pieces or it is a mess.

Thanks anyway.

Riccardo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]