首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >C++ POD结构继承?派生成员的内存布局有什么保证吗?

C++ POD结构继承?派生成员的内存布局有什么保证吗?
EN

Stack Overflow用户
提问于 2014-03-14 20:01:11
回答 5查看 7.5K关注 0票数 28

比方说,我有一个struct RGB,我想创建继承RGBstruct RGBA

struct RGB {
    unsigned char r;
    unsigned char g;
    unsigned char b;
};

struct RGBA: RGB {
    unsigned char a;
};

两者都将用于读取未压缩的图像数据:

RGBA *pixel=static_cast<RGBA *>(image->uncompressed_data);

问:关于struct RGBA的内存布局,这安全吗?有没有人能保证:

  • unsigned char a位于struct RGBA

RGB struct之后(not before)

  • There是struct RGB和a参数之间的空填充

#pragma pack在这方面会有帮助吗?这一切都是关于继承期间的内存布局。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22404423

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档