我的问题是这个.我有不同数字类型的列表,例如:
QList<qreal> mylist;
Run Code Online (Sandbox Code Playgroud)
现在,在我的代码中,我有一个函数,它需要一个QVariant参数,它是一个mylist.我发现这样做的唯一方法是使用for cyle并简单地将mylist中的所有数据添加到第二个列表中
QList<QVariant> temp,
Run Code Online (Sandbox Code Playgroud)
例如,将temp作为参数传递.
我想知道是否还有其他方法可以做到这一点.
非常感谢你.
Chr*_*ris 15
我必须多次这样做,据我所知,唯一的方法是创建一个新列表.
如果您需要经常使用不同类型的列表,那么您可以做一些更有趣的事情:
template <typename T>
QVariantList toVariantList( const QList<T> &list )
{
QVariantList newList;
foreach( const T &item, list )
newList << item;
return newList;
}
Run Code Online (Sandbox Code Playgroud)
因此,当您调用接收QVariant列表的函数时,您可以调用
myFunction( toVariantList(myList) );
Run Code Online (Sandbox Code Playgroud)
请注意,给定的函数仅适用于可以隐式转换为QVariants的类型.
| 归档时间: |
|
| 查看次数: |
12608 次 |
| 最近记录: |