这里是我的问题: 我有一个结构:指针和结构指针
typedef struct Data_Package{
int type;
size_t size;
void* data;
}Data_Package;
,我有一个功能:(编辑:阿门Tsirunyan评论)(这是一个.C功能)
void myFunc(Data_Package* ioData) {
ioData->data = malloc(sizeof(double));
(ioData->data)= (double*)62.5
} //that doesn't work
和main.cpp中,我想用我的功能:
Data_Package* ioData=0;
/* some random operation that change the data,type,... */
myFunc(ioData);
stc::cout << *static_cast<double*>(ioData->data) << std::endl //I want to display te value data (and not the address)
所以我想如T o知道如何更改我的函数中的数值数据,然后将其显示在main.cpp中(我需要使用指针和数据为void *,因为它可能是double或bool或int或...)
谢谢很多。
Drlk。
看起来像使用构造函数和'boost:variant'会更好。 – TartanLlama
我想我可以尝试一下,但它是否与定义类型一样精确?例如我从另一个文件中收到一个double。如果我将它转换成变体,我会丢失数据和精度? – drlk
现在有什么问题?我看到你已经改变了你的问题(并且使答案无效)。您不应该以这种方式编辑您的问题(不要更改它的内容,只需在编辑部分添加更多信息)。那么,哪些不起作用?您想做什么? – zoska