假设我们有这个模板用于一个结构和一个相同大小的字节数组的联合
template<typename T>
union point {
struct { T x, y; } coord;
static constexpr size_t buffer_size = sizeof(coord);
unsigned char buffer[buffer_size];
};
我们想在 C++17 之后的客户端代码中使用 CTAD 和聚合初始化
auto p1 = point { .coord = { 0.1, 0.2 } };
auto p2 = point { .coord = { 1, 2 } };
编译器希望我们有一个类型的推导指南point
。在联合类型的情况下如何定义?