在阅读 C++ 标准时,我读到这static_cast
是一种直接初始化(C++ 标准 8.5/15)。
我认为这意味着在 a 期间,会调用static_cast
相应的重载构造函数。
例如,有从 B 派生的类型 B 和类型 D,以及对象D d
。那么表达式static_cast<B>(d)
就是static_cast
表达式。
作为标准手段,这个static_cast
表达式是直接初始化。这是否意味着 this 将调用 type 的构造函数B
并返回一个新的 type 构造对象B
?
编辑
另一个问题是B & b = d
or怎么样B b = d
?这两个语句是否涉及构造函数B
?