小编Age*_*t49的帖子

For 循环或 std::any_of,我应该使用哪一个?

我无法在for 循环std::any_of之间做出决定,例如:

QString fileName = "Whatever";  // might contain a key-string which is part of sMyStringlist()
auto anyTypeContains = [&](const QString& categoryStr)
{
    for(auto const &keyStr : sMyStringlist()[categoryStr])
        if(fileName.contains(keyStr, Qt::CaseInsensitive))
            return true;
    return false;
};
if(anyTypeContains("myCategory"))
...
Run Code Online (Sandbox Code Playgroud)

或者

QString fileName = "Whatever";  // might contain a key-string which is part of sMyStringlist()
auto anyTypeContains = [&](const QString& categoryStr)
{
    return std::any_of(
                sMyStringlist()[categoryStr].begin(),
                sMyStringlist()[categoryStr].end(),
                [&](const QString& keyStr){
        return fileName.contains(keyStr, Qt::CaseInsensitive);
    });
};
if(anyTypeContains("myCategory"))
...
Run Code Online (Sandbox Code Playgroud)

我认为for 循环 …

c++ for-loop stl idioms c++11

2
推荐指数
1
解决办法
463
查看次数

标签 统计

c++ ×1

c++11 ×1

for-loop ×1

idioms ×1

stl ×1