我很惊讶,虽然形式良好:
int main()
{
using T = int;
T t;
(void)t;
t.~T();
}
不是:
int main()
{
int t;
(void)t;
t.~int();
}
但是,再次形成良好的形式:
int main()
{
int t;
(void)t;
using T = int;
t.~T();
}
我原以为using
声明根本没有任何区别。如果可以进行调用,为什么我不能使用真实的类型名称来编写伪结构调用?标准中的哪个子弹禁止它?