比方说,我有一个struct RGB,我想创建struct RGBA,继承RGB:
struct RGB {
unsigned char r;
unsigned char g;
unsigned char b;
};
struct RGBA: RGB {
unsigned char a;
};
Run Code Online (Sandbox Code Playgroud)
两者都将用于读取未压缩的图像数据:
RGBA *pixel=static_cast<RGBA *>(image->uncompressed_data);
Run Code Online (Sandbox Code Playgroud)
问题:关于内存布局,这样安全struct RGBA吗?有人保证:
unsigned char a之后RGB struct(不是之前)struct RGB和参数来自struct RGBA?会有#pragma pack帮助吗?这都是关于继承期间的内存布局.