【发布时间】:2010-10-04 08:25:53
【问题描述】:
嗯,我对即将到来的 C++0x 标准中的多个自动声明有点困惑。
auto a = 10, b = 3.f , * c = new Class();
在我读到的地方是不允许的。 原因是(?),因为不清楚连续声明是否应该与第一个声明(示例中为 int)具有相同的类型。
可能的翻译1:
int a = 10;
int b = 3.f;
int * c = new Class ();
导致错误
可能的翻译2:
int a = 10;
float b = 3.f;
Class * c = new Class ();
标准是如何产生的?
如果我可以说我的 POV,翻译#2 是最令人讨厌的,至少对我来说,我是一个普通的 C++ 用户。我的意思是,对我来说,“声明的每个变量都具有相同的声明类型”,witch 是自动的。 翻译#1 对我来说真的很不直观。
再见 QbProg
【问题讨论】: