现在我希望用一个宏定义 enter ,来决定一个指针是指向数据结构A还是数据结构B。
然后调用这个指针的时候,只用改变宏定义 enter 就能改变我需要的数据结构类型。
我想好好久也没办法实现,有考虑用共同体,但返回值的问题总是没法解决,不知道有没有大触有办法实现,说一下思路。
现在我希望用一个宏定义 enter ,来决定一个指针是指向数据结构A还是数据结构B。
然后调用这个指针的时候,只用改变宏定义 enter 就能改变我需要的数据结构类型。
我想好好久也没办法实现,有考虑用共同体,但返回值的问题总是没法解决,不知道有没有大触有办法实现,说一下思路。
#define TYPE_SWITCH 1
#if TYPE_SWITCH==1
typedef smartType int;
#else
typedef smartType char;
#endif
不知道这样可不可以~
或者:这样
#define TYPE_SWITCH 1
#if TYPE_SWITCH==1
#define Point P_int
#else
#define Point P_char
typedef union
{
int* P_int;
char* P_char;
} SmartType ;
void main(void)
{
SmartType a;
a.Point;//自动转换
}