Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/157.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
重载结构运算符 试图找出C++中实现比较运算符的解决方案。我有一个我想要的结构,每当它与它类型的另一个结构进行比较时。我拿出了一堆代码,只是为了让所有的东西都最小化 struct HuffNode{ //Comparison stuff.. needed in Pqueue bool operator> (const HuffNode&) const; bool operator>=(const HuffNode&) const; bool operator==(const HuffNode&) const; bool operator<=(const HuffNode&) const; bool operator< (const HuffNode&) const; };_C++_Operator Overloading - Fatal编程技术网

重载结构运算符 试图找出C++中实现比较运算符的解决方案。我有一个我想要的结构,每当它与它类型的另一个结构进行比较时。我拿出了一堆代码,只是为了让所有的东西都最小化 struct HuffNode{ //Comparison stuff.. needed in Pqueue bool operator> (const HuffNode&) const; bool operator>=(const HuffNode&) const; bool operator==(const HuffNode&) const; bool operator<=(const HuffNode&) const; bool operator< (const HuffNode&) const; };

重载结构运算符 试图找出C++中实现比较运算符的解决方案。我有一个我想要的结构,每当它与它类型的另一个结构进行比较时。我拿出了一堆代码,只是为了让所有的东西都最小化 struct HuffNode{ //Comparison stuff.. needed in Pqueue bool operator> (const HuffNode&) const; bool operator>=(const HuffNode&) const; bool operator==(const HuffNode&) const; bool operator<=(const HuffNode&) const; bool operator< (const HuffNode&) const; };,c++,operator-overloading,C++,Operator Overloading,有人知道如何解决这个问题吗?不完全确定。。我唯一能想到的就是没有正确的论点。我的目标是在模板类中使用它,以便比较两个结构。只需执行以下操作: if( *hn1 == *hn2 ){ cout << "HEYYYYYY111" << endl; } 使用*可以访问这个case对象中的值,它应该调用重载运算符。您正在比较指针。而是比较对象。你在比较指针,它们不太可能是相同的。你还需要真正实现一个运算符,即CLASICALY运算符 bool HuffNode::o

有人知道如何解决这个问题吗?不完全确定。。我唯一能想到的就是没有正确的论点。我的目标是在模板类中使用它,以便比较两个结构。

只需执行以下操作:

if( *hn1 == *hn2 ){
    cout << "HEYYYYYY111" << endl;
}

使用*可以访问这个case对象中的值,它应该调用重载运算符。

您正在比较指针。而是比较对象。你在比较指针,它们不太可能是相同的。你还需要真正实现一个运算符,即CLASICALY运算符
  bool HuffNode::operator==(const HuffNode  &f) const {
        return true;
    }
if( *hn1 == *hn2 ){
    cout << "HEYYYYYY111" << endl;
}