如何 QMap()::begin() + int 偏移量
How to QMap()::begin() + int offset
我的文件模型中有函数 returns 特定位置的实际文件名。
...
QMap<QString, QFileInfo> fileInfoMap_;
...
QString MFileModel::fileAt(int offset) const
{
return (fileInfoMap_.begin() + offset).key();
}
...
问题是,此功能在 QT6 中停止工作。我该如何修复它?我正在寻找文档,但没有成功。
QMap.begin() returns QMap::const_iterator。没有使用“+ int”的选项。
构建返回错误:
...mfilemodel.cpp:276: 错误:二进制表达式的无效操作数('QMap<QString, QFileInfo>::const_iterator' 和 'int')
这解决了我的问题。
也许存在简单的方法。但这也行。
QString MFileModel::fileAt(int offset) const
{
QMap<QString, QFileInfo>::const_iterator ci = fileInfoMap_.begin();
for (int i=0; i<offset; i++)
{
ci = ci.operator++();
}
//return (fileInfoMap_.begin() + offset).key();
return ci.key();
}
我的文件模型中有函数 returns 特定位置的实际文件名。
...
QMap<QString, QFileInfo> fileInfoMap_;
...
QString MFileModel::fileAt(int offset) const
{
return (fileInfoMap_.begin() + offset).key();
}
...
问题是,此功能在 QT6 中停止工作。我该如何修复它?我正在寻找文档,但没有成功。
QMap.begin() returns QMap::const_iterator。没有使用“+ int”的选项。
构建返回错误: ...mfilemodel.cpp:276: 错误:二进制表达式的无效操作数('QMap<QString, QFileInfo>::const_iterator' 和 'int')
这解决了我的问题。 也许存在简单的方法。但这也行。
QString MFileModel::fileAt(int offset) const
{
QMap<QString, QFileInfo>::const_iterator ci = fileInfoMap_.begin();
for (int i=0; i<offset; i++)
{
ci = ci.operator++();
}
//return (fileInfoMap_.begin() + offset).key();
return ci.key();
}