Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.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++字符串比较,我缺少什么?_C++_String_Binary Search Tree - Fatal编程技术网

这个失败的C++字符串比较,我缺少什么?

这个失败的C++字符串比较,我缺少什么?,c++,string,binary-search-tree,C++,String,Binary Search Tree,我试图将一个字符串与一个二进制搜索树进行比较,下面的代码在第一个搜索树上运行,但是在其他每个搜索树上都失败了,尽管我已经检查了以确保它递归地检查了树。谢谢 bool BST::compareIt(Node* current, string name) { if (name == current->title) return true; if (current->left != NULL) compareIt(current->lef

我试图将一个字符串与一个二进制搜索树进行比较,下面的代码在第一个搜索树上运行,但是在其他每个搜索树上都失败了,尽管我已经检查了以确保它递归地检查了树。谢谢

bool BST::compareIt(Node* current, string name)
{
    if (name == current->title)
       return true;
    if (current->left != NULL)
        compareIt(current->left, name);
    if (current->right != NULL)
        compareIt(current->right, name);
    return false;
 }

I

您需要返回递归调用的结果,例如

if (current->left != NULL)
    return compareIt(current->left, name);

右手分支也是如此。

就我个人而言,我不喜欢使用字符串。。我用char*代替…@mlwn为什么?字符串怎么了?大多数时候,我为有限的处理器编码,我喜欢控制使用的内存。。。我想现代音乐中的弦乐没有问题machines@mlwn这很有趣,但不太可能有助于澄清这个问题或帮助读者了解这个问题。@aschepler。。。我甚至对你的评论投了赞成票。。。你说得对,你真是天赐之物。显而易见的是我面前的东西,我没有看到。谢谢你指出!不用担心,每个人都会这样。如果它对你有用,请考虑接受答案。