我的问题是。我有不同数字类型的列表,例如:
QList<qreal> mylist;现在,在我的代码中,我有一个函数,它需要一个QVariant参数,即mylist。我找到的唯一方法是使用for cyle并简单地将mylist中的所有数据添加到第二个list中
QList<QVariant> temp, 例如,将temp作为参数传递。
我想知道有没有其他方法可以做到这点。
非常感谢。
发布于 2012-02-14 02:38:02
我已经这样做过几次了,据我所知,唯一的方法就是创建一个新的列表。
如果这是你在不同类型的列表中经常要做的事情,你可以做一些更花哨的事情:
template <typename T>
QVariantList toVariantList( const QList<T> &list )
{
QVariantList newList;
foreach( const T &item, list )
newList << item;
return newList;
}因此,当您调用接受QVariant列表的函数时,您可以只调用
myFunction( toVariantList(myList) );请注意,给定的函数仅适用于可以隐式转换为QVariants的类型。
https://stackoverflow.com/questions/9265288
复制相似问题