读完这篇文章后,我提出了一个int ()
产生 0 的观点,因为临时int
是值初始化的,而不是因为int()
调用了int
. (根据我的理解,这篇文章有缺陷。)
我还说过原始(内置)类型没有构造函数。原作者让我检查第 10.4.2 节(TC++PL),上面写着
内置类型也有默认构造函数($6.2.8)
但我仍然认为“C++ 甚至允许内置类型(原始类型)具有默认构造函数”这句话。有缺陷(根据 C++03)。
我认为 TC++PL 中的 Bjarne 将“像符号 ie 一样的构造函数()
”与实际的构造函数调用混为一谈。Bjarne 在写这本书的时候并没有引入值初始化,对吧?那么根据 C++98 和 C++03,TC++PL 中的文本是否不正确?
你们有什么感想?
编辑
我亲自(通过邮件)向 Bjarne 询问了 TC++PL 中有缺陷的文本,这是他的回复
我认为您将“实际的构造函数调用”与概念上的构造函数混为一谈。 内置类型被认为具有构造函数(无论标准使用什么词来描述它们的行为)。