我正在阅读一些C ++代码,但找不到哪一行:
using unique_ptr<Node<Key, Data>>::unique_ptr;
在以下代码块中的意思是:
...
using std::unique_ptr;
template <class Key, class Data>
class Node;
template <class Key, class Data>
class Tree : public unique_ptr<Node<Key, Data>>
{
using unique_ptr<Node<Key, Data>>::unique_ptr;
// Copy constructor
Tree(unique_ptr<Node<Key, Data>>&tree) {
*this = tree;
}
// Move constructor
Tree(unique_ptr<Node<Key, Data>>&& tree) :
unique_ptr<Node<Key, Data>> (move(tree)) {
}
...
}
template <class Key, class Data>
class Node {
...
}
我认为关键字 using 与 :: 一起用于导入该类的属性或函数。该行做什么?
P.S .:在Node类中,没有称为unique_ptr的属性或函数。