根据QFileInfo
文档:
的一些
QFileInfo
函数查询文件系统,但出于性能原因,一些函数只对文件名本身进行操作。
但是,我仍然不确定哪些方法可以在后台访问文件本身,哪些不。例如:
for (int i = 0; i < 100000; ++i) {
QFileInfo fi("path/to/my/file");
qDebug() << fi.fileName();
}
此代码是否对以下内容有惩罚?
for (int i = 0; i < 100000; ++i) {
QString fileName = QString("path/to/my/file").split('/').last();
qDebug() << fileName;
}
因为我不确定哪些QFileInfo
方法(甚至构造函数)访问文件本身。
当然,我可以做一些分析,这可能是在代码速度方面过早的优化,但是我担心硬盘驱动器。我知道QFileInfo
缓存,所以想象一下我将尝试获取不同文件的文件名。