Something
public cpp v1 · immutabletemplate <class T>class ParamObject {public: virtual void ToFile ( FILE *dest ) { fwrite ( (char*)this - sizeof(T), sizeof(T),1, dest ); }};#define PARAM(TYPE,NAME) union { TYPE NAME; struct { TYPE NAME##alias; ParamObject<TYPE> NAME##object; }; };