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

吕里昂

我和我的好友最近一直在阅读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条评论
登录后参与评论

相关文章

来自分类Dev

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

来自分类Dev

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

来自分类Dev

构造函数的显式关键字的用法

来自分类Dev

为什么需要显式编写'auto'关键字?

来自分类Dev

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

来自分类Dev

显式关键字是什么意思?

来自分类Dev

为什么显式删除构造函数?

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

为什么 Pandas 会抱怨“n”是 split 函数的无效关键字参数?

来自分类Dev

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

来自分类Dev

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

来自分类Dev

为什么不可能显式地默认具有volatile参数的副本构造函数?

来自分类Java

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

来自分类Dev

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

来自分类Dev

为什么“散布”关键字参数时**是可选的?

来自分类Dev

为什么Python在关键字参数之后允许* args?

来自分类Dev

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

来自分类Dev

为什么可以在构造函数中使用成员初始化来满足显式构造函数的参数呢?

来自分类Dev

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

来自分类Dev

为什么在Scala中匹配关键字而不是函数?

来自分类Dev

Rust 函数需要 return 关键字。为什么?

来自分类Dev

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

来自分类Dev

为什么我必须使用 this 关键字来初始化构造函数中的实例变量?

来自分类Dev

如果JavaScript不支持古典继承,为什么我可以创建构造函数并使用new关键字?

来自分类Dev

从具有常量构造函数的类创建对象时,为什么要使用 const 关键字?

来自分类Dev

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

Related 相关文章

  1. 1

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

  2. 2

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

  3. 3

    构造函数的显式关键字的用法

  4. 4

    为什么需要显式编写'auto'关键字?

  5. 5

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

  6. 6

    显式关键字是什么意思?

  7. 7

    为什么显式删除构造函数?

  8. 8

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

  9. 9

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

  10. 10

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

  11. 11

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

  12. 12

    为什么 Pandas 会抱怨“n”是 split 函数的无效关键字参数?

  13. 13

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

  14. 14

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

  15. 15

    为什么不可能显式地默认具有volatile参数的副本构造函数?

  16. 16

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

  17. 17

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

  18. 18

    为什么“散布”关键字参数时**是可选的?

  19. 19

    为什么Python在关键字参数之后允许* args?

  20. 20

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

  21. 21

    为什么可以在构造函数中使用成员初始化来满足显式构造函数的参数呢?

  22. 22

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

  23. 23

    为什么在Scala中匹配关键字而不是函数?

  24. 24

    Rust 函数需要 return 关键字。为什么?

  25. 25

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

  26. 26

    为什么我必须使用 this 关键字来初始化构造函数中的实例变量?

  27. 27

    如果JavaScript不支持古典继承,为什么我可以创建构造函数并使用new关键字?

  28. 28

    从具有常量构造函数的类创建对象时,为什么要使用 const 关键字?

  29. 29

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

热门标签

归档