其他分享
首页 > 其他分享> > c – 我可以在Qt中映射列表吗?

c – 我可以在Qt中映射列表吗?

作者:互联网

这已经相当简洁了,但如果我可以将列表映射为Ruby,那将是非常棒的.假设我有一个QStringList myStringList,其中包含“12.3”,“ – 213.0”,“9.24”之类的内容.我想简单地使用toDouble映射整个事物而不必迭代. Qt有这个方法吗?

// i.e. I would love a one-liner for the following
// NB QT provices foreach
QList<double> myDoubleList;
foreach(QString s, myStringList) {
    myDoubleList.append(s.toDouble());
}

解决方法:

据我所知,QT的容器有一个与标准容器兼容的接口,因此您应该可以在它们上使用标准算法.在这种情况下,像

std::transform(myStringList.begin(), 
               myStringList.end(), 
               std::back_inserter(myDoubleList),
               std::mem_fun(&QString::toDouble));

标签:qlist,c,qt
来源: https://codeday.me/bug/20190723/1518203.html