1. 程式人生 > >解決資料結構未對齊的異常

解決資料結構未對齊的異常

在程式設計中可能會遇到某個類或者結構體出現異常,其中的成員變量出現錯亂、未對其的情況,這種情況一般是由於位元組未對齊造成的,可以使用以下的方法解決,在這個類或者結構體的開始加入#pragma pack ( push,1) ,末尾加入#pragma pack(pop)舉例如下

#pragma pack(push,1)
class CDEM_BlockEx
{
public:
    CDEM_BlockEx(void);
public:
    virtual ~CDEM_BlockEx(void);

public://源影像資料的範圍
    long                    m_nBitsPerPixel;
    long                    m_nSourceWidth;
    long                    m_nSourceHeight;
    double                    m_dSourceOriginX;
    double                    m_dSourceOriginY;
    double                    m_dSourceResolutionX;
    double                    m_dSourceResolutionY;

}

#pragma pack(pop)