void * 如何返回不同类型的数据
void * 怎么返回不同类型的数据?
例如,我想用同一个函数:
void get_data(int dat_type,void * dat_out)
可否实现dat_out返回的类型为任何类型,例如int,struct等。
int dat;
get_data(is_int,(void*)&dat){
//怎么实现? 如果为int*参数,则可以*dat = 23?
}
struct aaa;
get_data(is_struct,(void*)&aaa){
//怎么实现?
}
------解决方案--------------------
哦,不好意思,思想是一样的,反过来就可以了。
例如,我想用同一个函数:
void get_data(int dat_type,void * dat_out)
可否实现dat_out返回的类型为任何类型,例如int,struct等。
int dat;
get_data(is_int,(void*)&dat){
//怎么实现? 如果为int*参数,则可以*dat = 23?
}
struct aaa;
get_data(is_struct,(void*)&aaa){
//怎么实现?
}
------解决方案--------------------
哦,不好意思,思想是一样的,反过来就可以了。