"black box" 类型的标准布局保证的目的是什么?

What is the purpose of standard-layout guarantees for "black box" types?

C++ 标准指定互斥、原子或 conditinal_variable 是标准布局类型。

这个规范有什么好处?用户如何利用此 属性?

一般来说,如果知道一个类型是标准布局但不知道其实现细节,我能得到什么?

您可以让您的代码与其他使用与您的不同编程语言编写的程序对话。

裁判提到 C++ concepts: StandardLayoutType:

Standard layout types are useful for communicating with code written in other programming languages.

来自this standard layout reference

Standard layout types are useful for communicating with code written in other programming languages.

例如,如果您构建一个 C 和 C++ 混合应用程序,C 结构将是标准布局,并且可以在用 C 编写的部分和用 C 编写的部分之间互换使用在 C++ 中。这对于能够使用操作系统本机函数和结构通常非常重要。