请参阅此示例 [class.base.init] / 11
struct A {
A() = default; // OK
A(int v) : v(v) { } // OK
const int& v = 42; // OK
};
A a1; // error: ill-formed binding of temporary to reference
A a2(1); // OK, unfortunately
clang和g ++都编译代码(发出警告),但我想了解它们为什么打印 0
对于会员 a1.v
和 a2.v
?看到 演示。