为什么双参数构造函数以显式关键字开头?

吕里昂

我和我的好友最近一直在阅读leveldb源代码。我们遇到了这个问题。在leveldb db / skiplist.h文件中,有一个构造函数声明:

explicit SkipList(Comparator cmp, Arena* arena);

我知道带有单个参数的显式构造函数意味着没有针对构造函数参数的隐式类型转换。但是带有显式关键字的双参数构造函数是什么意思呢?它是C ++ 11的新规则吗?

谢谢。

克里斯

在C ++ 11中,您可以使用braced-init-lists代替其他一些表达式,这有所作为。例如,您可以在return语句中使用它们:

SkipList foo() {
    return {{}, nullptr}; //does not compile with explicit constructor
    return SkipList{{}, nullptr}; //compiles with or without explicit constructor
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类常见问题

为什么JVM参数以“ -D”开头?

来自分类Dev

为什么双参数构造函数以显式关键字开头?

来自分类Dev

为什么`try`是显式关键字?

来自分类Dev

为什么在调用函数时使用`go`关键字?

来自分类Dev

为什么C ++和Java中的构造函数调用需要显式类型参数?

来自分类Dev

为什么构建器模式的构造函数是私有的,但为什么仍使用new关键字?

来自分类Dev

为什么将显式类型参数赋予非泛型方法或构造函数?

来自分类Dev

perl构造函数关键字“ new”

来自分类Dev

构造函数之后“ this”关键字的用途是什么?

来自分类Dev

为什么实例不继承没有原型关键字添加到构造函数的属性

来自分类Dev

为什么带有无符号long long参数的std :: bitset构造函数未标记为显式?

来自分类Dev

将显式关键字用于一个参数构造函数

来自分类Dev

构造函数使用1个参数,但基本关键字使用2个参数时会发生什么情况

来自分类Dev

为什么“ explicit”关键字允许隐式转换?

来自分类Dev

使用多个参数的构造函数是否需要显式关键字?

来自分类Dev

失去“ this”关键字的显式绑定

来自分类Dev

Python类设计:显式关键字参数vs. ** kwargs vs. @property

来自分类Dev

函数参数前的class关键字是什么?

来自分类Dev

为什么sorted()的key参数需要关键字参数

来自分类Dev

python 2.7,具有位置,关键字参数以及可变数量的参数(任意参数列表)的函数

来自分类Dev

在Ruby类构造函数中使用关键字参数还是哈希参数?

来自分类Dev

在bash中,为什么“ local”关键字传递函数参数?

来自分类Dev

参数类型的构造函数中“ where”关键字的用途

来自分类Dev

为什么在构造函数中使用此关键字

来自分类Dev

为什么C ++和Java中的构造函数调用需要显式类型参数?

来自分类Dev

将显式关键字用于一个参数构造函数

来自分类Dev

构造函数使用1个参数,但基本关键字使用2个参数时会发生什么情况

来自分类Dev

为什么构造函数/字段中的“ new”关键字对于单元测试不灵活?

来自分类Dev

为什么 New 关键字(构造函数)会出现 StackOverFlowError?

Related 相关文章

  1. 1

    为什么JVM参数以“ -D”开头?

  2. 2

    为什么双参数构造函数以显式关键字开头?

  3. 3

    为什么`try`是显式关键字?

  4. 4

    为什么在调用函数时使用`go`关键字?

  5. 5

    为什么C ++和Java中的构造函数调用需要显式类型参数?

  6. 6

    为什么构建器模式的构造函数是私有的,但为什么仍使用new关键字?

  7. 7

    为什么将显式类型参数赋予非泛型方法或构造函数?

  8. 8

    perl构造函数关键字“ new”

  9. 9

    构造函数之后“ this”关键字的用途是什么?

  10. 10

    为什么实例不继承没有原型关键字添加到构造函数的属性

  11. 11

    为什么带有无符号long long参数的std :: bitset构造函数未标记为显式?

  12. 12

    将显式关键字用于一个参数构造函数

  13. 13

    构造函数使用1个参数,但基本关键字使用2个参数时会发生什么情况

  14. 14

    为什么“ explicit”关键字允许隐式转换?

  15. 15

    使用多个参数的构造函数是否需要显式关键字?

  16. 16

    失去“ this”关键字的显式绑定

  17. 17

    Python类设计:显式关键字参数vs. ** kwargs vs. @property

  18. 18

    函数参数前的class关键字是什么?

  19. 19

    为什么sorted()的key参数需要关键字参数

  20. 20

    python 2.7,具有位置,关键字参数以及可变数量的参数(任意参数列表)的函数

  21. 21

    在Ruby类构造函数中使用关键字参数还是哈希参数?

  22. 22

    在bash中,为什么“ local”关键字传递函数参数?

  23. 23

    参数类型的构造函数中“ where”关键字的用途

  24. 24

    为什么在构造函数中使用此关键字

  25. 25

    为什么C ++和Java中的构造函数调用需要显式类型参数?

  26. 26

    将显式关键字用于一个参数构造函数

  27. 27

    构造函数使用1个参数,但基本关键字使用2个参数时会发生什么情况

  28. 28

    为什么构造函数/字段中的“ new”关键字对于单元测试不灵活?

  29. 29

    为什么 New 关键字(构造函数)会出现 StackOverFlowError?

热门标签

归档