首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何调用模板函数QList::operator<<的非专用版

如何调用模板函数QList::operator<<的非专用版
EN

Stack Overflow用户
提问于 2012-03-21 00:25:24
回答 1查看 264关注 0票数 1

情景

我有一个QList<QVariant>,其中每个QVariant项都应该是它自己的QList<QVariant>。为了填充这个列表,我想使用QList::operator<<,它被重载以接受const T & value和更专业的const QList<T> & other

Problem

当我运行以下代码时:

QList<QVariant> rootList;
QList<QVariant> subList = QList<QVariant>() << 1 << 2 << 3;
rootList << subList;

结果列表将如下所示:

rootList: [1, 2, 3]

相反,我希望它看起来像这样:

rootList: [[1, 2, 3]]

如何强制调用QList::operator<<的非专用版

解决方法

我意识到有一个QList<T>没有重载的QList::push_back函数,这就是我想要的。但是,我不想依赖一个仅“为了STL兼容性”而提供的函数。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-03-21 00:32:21

您可以显式地将QVariantList转换为QVariant

rootList << (QVariant)subList;

rootList << QVariant(sublist);
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9790814

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档