mirror of
https://github.com/CnTransGroup/EffectiveModernCppChinese.git
synced 2024-12-27 13:21:07 +08:00
Update item42.md
更正一处小错误。
This commit is contained in:
parent
5466488cb3
commit
943bfb2dcd
@ -228,7 +228,7 @@ std::regex r(nullptr); //可编译
|
|||||||
|
|
||||||
```cpp
|
```cpp
|
||||||
std::regex r1 = nullptr; //错误!不能编译
|
std::regex r1 = nullptr; //错误!不能编译
|
||||||
std::regex r2(nullptr); //错误
|
std::regex r2(nullptr); //可以编译
|
||||||
```
|
```
|
||||||
|
|
||||||
在标准的官方术语中,用于初始化`r1`的语法(使用等号)是所谓的**拷贝初始化**。相反,用于初始化`r2`的语法是(使用小括号,有时也用花括号)被称为**直接初始化**。拷贝初始化不被允许使用`explicit`构造函数(译者注:即没法调用相应类的`explicit`拷贝构造函数),直接初始化却被允许。这就是初始化`r1`不能编译,而初始化`r2`可以编译的原因。
|
在标准的官方术语中,用于初始化`r1`的语法(使用等号)是所谓的**拷贝初始化**。相反,用于初始化`r2`的语法是(使用小括号,有时也用花括号)被称为**直接初始化**。拷贝初始化不被允许使用`explicit`构造函数(译者注:即没法调用相应类的`explicit`拷贝构造函数),直接初始化却被允许。这就是初始化`r1`不能编译,而初始化`r2`可以编译的原因。
|
||||||
|
Loading…
Reference in New Issue
Block a user