我一直在我的头上靠着墙壁打了几个小时。我不知道该怎么做。我重构了我的函数几次,仍然没有得到它的正常工作。按名称遍历一棵树C++
这是用于我的C++类中的编程任务。它必须有一个特定的形式,如数据类型,参数等,由教师给出,所以我不能改变这样的事情。我们必须使用字符数组,因此strcmp()。如果我们找到它,我们必须返回该人,否则返回NULL。
继承人什么我与迄今为止的工作:
person *classname::getPersonByName(char *name, person *rt)
{
if (rt != NULL)
{
if (strcmp(rt->Title, title) == 0)
{
return rt;
}
else
{
getPersonByName(title, rt->left);
getPersonByName(title, rt->right);
//return NULL;
}
}
}
在调试时,会发现和命名返回的人就好了。问题是,它是否会及时覆盖我的回报,因此不会以正确的人为结果。
NULL的底部被注释掉,最终将每次调用设置为NULL,无论搜索是否找到它。
什么是'title',为什么'name'闲置? – 2012-08-01 02:06:44
这里有一个提示:为什么函数在签名中有'person *'? – irrelephant 2012-08-01 02:09:16