【发布时间】:2018-11-21 00:38:58
【问题描述】:
这是一个大问题,所以我要求提供参考而不是小册子大小的答案。我正在阅读 Stroustrup 的 C++ 之旅,似乎对象的布局方式是内存是许多 C++ 功能设计的基础,例如POD 与聚合与具有虚拟成员的类。
不幸的是,Tour 本身并没有详细介绍这个主题,并且浏览一些标准参考资料(例如 C++ Primer 5ed 和 TCPPPL 4ed)的 ToC 并没有显示它们是否或在哪里涵盖它。
【问题讨论】:
-
它是特定于 ABI 的。见github.com/hjl-tools/x86-psABI/wiki/X86-psABI
-
标准涵盖了其中的一些内容。其余由实现(编译器)
-
并非如此。这样做的全部目的是允许实现做他们想做的事。
-
这不是“要求我们推荐或查找书籍、工具、软件库、教程或其他非现场资源的问题”,而是询问“xx 的规范在哪里”,这就是主题的 100%
标签: c++ language-lawyer memory-layout object-layout