所以沒有,這不是做事情的最好方法。然而,爲了理論的緣故,,如何成功地將指針值分配給匿名結構的指針?C++匿名結構指針賦值
#pragma pack(push,1)
struct
{
__int16 sHd1;
__int16 sHd2;
} *oTwoShort;
#pragma pack(pop)
oTwoShort = (unsigned char*)msg; // C-Error
生產:
錯誤C2440: '=':無法從 '無符號字符*' 轉換到 '<無名型oTwoShort> *'
示例假定msg
本身就是一個有效的指針。
這可能嗎?既然你沒有實際的類型,你甚至可以強制轉換嗎?
BOOST_PROTO_DECLTYPE是否適用於沒有鏈接的類型(如匿名類型)?我找不到任何確鑿的文檔,並試圖提出一個可能的實現我總是遇到這樣的問題,即不能將不具有鏈接的類型用作C++ 03中的模板參數,即使它是從一個從函數參數。 –
@CharlesBailey:好問題。說實話,現在你提到它,我懷疑我曾經嘗試過將它與一個沒有鏈接的類型一起使用,所以我不確定。 –