QT加数据结构实现通讯录中查找的实现问题
本人最近用数据结构中的单链表加QT写了一个通讯录的Demo,在实现查找信息时出现了如下问题,求大佬解惑:
/**************************************
*在添加到通讯录中的数据查找相关信息如
* 输入姓名------>显示电话号码
* 输入电话号码------>显示姓名
***************************************/
void MainWindow::on_search_clicked()//输入姓名或者电话号码是显示另外一个信息
{
Node *currentNode=new Node; //创建新节点
pList->GetElem(0,currentNode); //获取添加到通讯录中的首元素结点
cout<<"1"<<currentNode->data.name; //测试获取的信息,在运行程序时 输入了要添加的数据后,进行相应的查找,
//结果在应用程序输出栏没有显示,退出窗口界面后又在应用输出栏打印了
QString qs_Name = ui->name->text();
QString qs_Phone = ui->phone->text();
if(qs_Name.isEmpty() && qs_Phone.isEmpty())//还有这些条件好像进不去
{
//提示输入需要查找的信息
}
if((!qs_Name.isEmpty())&&(qs_Phone.isEmpty()))
{
//通过姓名查电话
if(currentNode->data.name!= qstr2str(qs_Name))
{
currentNode=currentNode->next;
cout<<currentNode->data; //应用输出出没有改行信息
}
else
{
qs_Phone=str2qstr(currentNode->data.phone);
}
}
if(qs_Name.isEmpty() && !qs_Phone.isEmpty())
{
//通过电话查姓名
if(currentNode->data.phone!= qstr2str(qs_Phone))
{
currentNode=currentNode->next;
}
else
{
qs_Name=str2qstr(currentNode->data.name);
}
}
}