对C++;运算符重载 在C++中,我对类的定义理解不到,尤其是运算符和**,我对这些有点困惑。(我是C++初学者) SKNode& operator=(const SKNode*& node) { key = node->key; for (int i = 0; i < MAXLEVEL; i++) { forward[i] = node->forward[i]; } return *this; } SKNode&operator=(常量SKNode*&node) { 键=节点->键; 对于(int i=0;i转发[i]; } 归还*这个; }

对C++;运算符重载 在C++中,我对类的定义理解不到,尤其是运算符和**,我对这些有点困惑。(我是C++初学者) SKNode& operator=(const SKNode*& node) { key = node->key; for (int i = 0; i < MAXLEVEL; i++) { forward[i] = node->forward[i]; } return *this; } SKNode&operator=(常量SKNode*&node) { 键=节点->键; 对于(int i=0;i转发[i]; } 归还*这个; },c++,C++,此重载的赋值运算符将指定的节点分配给对象本身。 例如,在实施时: A a1; A a2; A a3; a1 = a2; 最后一条语句调用实例a1的操作符,实际上将a2的内容复制到a1中 操作员返回*此。换句话说,是对自身的引用。 通过这种方式,您可以使用以下构造: a1 = a2 = a3; 这将首先调用实例a2上的重载运算符,将a3分配给a2,然后调用a1的重载运算符,将a2分配给a1“我很困惑”不是一个特定的问题。对不起,请问一个特定的问题。

此重载的赋值运算符将指定的节点分配给对象本身。
例如,在实施时:

A a1;
A a2;
A a3;
a1 = a2;
最后一条语句调用实例
a1
的操作符,实际上将
a2
的内容复制到
a1

操作员返回
*此
。换句话说,是对自身的引用。
通过这种方式,您可以使用以下构造:

a1 = a2 = a3;
这将首先调用实例
a2
上的重载运算符,将
a3
分配给
a2
,然后调用
a1
的重载运算符,将
a2
分配给
a1

“我很困惑”不是一个特定的问题。对不起,请问一个特定的问题。