【发布时间】:2013-07-12 23:07:07
【问题描述】:
我和我的伙伴最近一直在阅读 leveldb 源代码。我们遇到了这个问题。在leveldbdb/skiplist.h文件中,有一个构造函数声明:
explicit SkipList(Comparator cmp, Arena* arena);
我知道具有单个参数的显式构造函数意味着构造函数参数没有隐式类型转换。但是带有显式关键字的双参数构造函数是什么意思? 是 C++11 的新规则吗?
谢谢。
【问题讨论】:
-
这是准确的声明吗?
arena没有默认值吗? -
@Gorpik 我不知道 OP 是否有完全相同的界面,但请看here。
-
C++“显式”关键字用于避免隐式转换
-
@TobiMcNamobi 感谢您的链接。第 46 行是我引用的内容。
-
@alexbuisson 是的,正如我在问题中提到的那样。但是多参数构造函数呢?