当前位置:  开发笔记 > 编程语言 > 正文

有人可以解释这种语法吗?

如何解决《有人可以解释这种语法吗?》经验,为你挑选了1个好方法。

我对以下构造函数感到有点困惑.我知道值键,值和下一个在这里被初始化,但是它们之后的括号让我失望.操作键(键)是否将类型K对象传递给类型K构造函数?这里发生了什么?我正在看的网页就在这里.任何帮助深表感谢.

// Hash node class template
template 
class HashNode
{
public:

    HashNode(const K &key, const V &value)
        : key(key), value(value)
    {}

private:

    // key-value pair
    K key;
    V value;
};

Dylan Nichol.. 7

:key(key)只是用参数'key'的值初始化私有成员'key'.即使具有相同的名称,它也不含糊,因为只能使用此语法初始化成员,而C++用于解析符号名称的规则意味着首先检查本地定义的(包括通过参数列表)名称,因此第二个"键"必须参考论点.这是一个好的做法也许是一个品味的问题.



1> Dylan Nichol..:

:key(key)只是用参数'key'的值初始化私有成员'key'.即使具有相同的名称,它也不含糊,因为只能使用此语法初始化成员,而C++用于解析符号名称的规则意味着首先检查本地定义的(包括通过参数列表)名称,因此第二个"键"必须参考论点.这是一个好的做法也许是一个品味的问题.

推荐阅读
黄晓敏3023
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有