Exceptional C++

【Exceptional C++(24)】变量的初始化

2018-01-30  本文已影响4人  downdemo
T t = u; // 通过拷贝构造函数拷贝初始化
// 虽然有=但仍然是一个初始化操作而非赋值操作
// 允许用=只是为了沿用C的语法,operator=不被调用
// 如果u也是T类型,与T t(u)等价,调用拷贝构造函数
// 如果是其他类型,与T t(T(u))等价
// u被转换成T类型临时对象,t由此拷贝构造出来
T t(u); // 通过构造函数T::T(u)直接初始化
T t(); // 看上去像变量声明,实际是一个函数声明
T t; // t被默认构造函数T::T()初始化
上一篇 下一篇

猜你喜欢

热点阅读