isRelative()的意外行为

时间:2015-07-10 09:44:32

标签: c++ qt

我正在使用C ++ Qt Library,我正在过滤掉我文件中的相对路径,而调试除相对路径之外的几个字符串也被视为相对路径。我想知道isRelative()的这种行为的原因,或者我正在做错误的事情,以下示例给出了真实。

 not difficult

我正在从一个文件中读取,其中只有少数条目是相对路径,因此isRelative()不是仅为那些条目返回true,而是为许多值返回true,如:" 1",&# 34; 0.0"," NO"等

1 个答案:

答案 0 :(得分:2)

要使它不是相对的,你应该指定它应该在哪里搜索的完整路径(绝对路径):

void deleteAllNodes(list head)
{
    list ptr = head;  
    while ((ptr = head) != NULL)
     { 
        head = head->next;         
        free (ptr);               
     }
}

然后它不会是相对的。

在您的情况下,它相当于:

QFileInfo fi("/home/user/1");
qDebug() << fi.isRelative();

Reading: Absolute path vs relative path