這裏是我的問題: 我有一個結構:指針和結構指針
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