Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用带有operator<<指针的QStringList

使用带有operator<<指针的QStringList
EN

Stack Overflow用户
提问于 2013-10-04 02:18:30
回答 3查看 2.6K关注 0票数 2

我怎么能改变这段代码?

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
QString s="123";
QStringList *myList=new QStringList;

myList<<s;

错误:

不匹配“operator<<”(操作数类型为“QStringList*”和“QString”)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
*myList<<s;

也不起作用:在此之后,myList是空的。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-10-04 02:24:42

对于QStringList使用指针是没有什么意义的,因为这是一个隐式共享类,因为它是在写入时复制的。您可以在下面找到更多详细信息:

http://qt-project.org/doc/qt-5.1/qtcore/implicit-sharing.html

这意味着,我会重构您的代码,如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
QString s="123";
QStringList myList;

myList << s;

注意,您也有一个用于myList的错误,因为您似乎已经编写了myLis。这至少是一个语法错误,会导致编译错误。如果您对此有支持,也可以使用C++11语法:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
QString s="123";
QStringList myList({s});

当您有更多的元素要插入,而没有连续的单独追加行时,这将变得非常有用。

但是,如果您仍然出于某种原因对此感兴趣,则应考虑以下几点:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
myList->append(s);

或者,作为最后的手段,如果你没有犯过任何其他的错误,即使你的路线也会起作用。这应该是查看您是否犯过其他错误的全部代码:

main.cpp

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include <QStringList>
#include <QDebug>

int main()
{
    QString s="123";
    QStringList *myList = new QStringList;
    *myList<<s;
    qDebug() << *myList;
    return 0;
}

建筑(类似的东西)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
g++ -Wall -fPIC -I/usr/include/qt -I/usr/include/qt/QtCore -lQt5Core main.cpp && ./a.out

输出

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
("123")
票数 7
EN

Stack Overflow用户

发布于 2013-10-04 02:21:44

<<是一个过载的操作符。我觉得你应该试试

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
(*myList)<<s;

编辑我刚刚测试,和*myList << s;似乎工作..。也许你还有别的问题..。

票数 1
EN

Stack Overflow用户

发布于 2014-08-16 11:41:04

如果使用指向QStringList的指针,则必须在使用后手动删除它,因为该类不是QOBJECT,也不使用Qt垃圾收集器系统。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19178815

复制
相关文章
Nginx 反向代理可以缓存 HTTP POST 请求页面吗?
本文节选自《Netkiller Web 手札》 作者:netkiller 网站:http://www.netkiller.cn 答案是可以! 因为nginx 使用 url 作为缓存的key ( Nginx 将url地址 md5后作为缓存的 key ),所以默认情况下 Nginx 只能处理 HTTP GET 缓存。 对于 HTTP POST 请求,提交数据放在HTTP Head 头部提交到服务器的, 提交前后URL始终不变,Nginx 无法区分相同网址两次请求的内容有变化。 但是我们可以自定义 缓存 key
netkiller old
2018/03/05
2.4K0
django admin 列表禁用删除操作,编辑页面禁用删除按钮
class AnchorBindAgentAdmin(admin.ModelAdmin): def get_actions(self, request): # 列表禁用删除操作 if 'delete_selected' in actions: del actions['delete_selected'] return actions def has_delete_permission(self, request, o
卓越笔记
2023/02/18
2.1K0
django开发中利用 缓存文件 进行页面缓存
Cache-Control与Expires的作用一致,都是指明当前资源的有效期,控制浏览器是否直接从浏览器缓存取数据还是重新发请求到服务器取数据。只不过Cache-Control的选择更多,设置更细致,如果同时设置的话,其优先级高于Expires。
雷子
2021/03/15
1.1K0
django开发中利用 缓存文件 进行页面缓存
『叶问』#42,可以禁用MyISAM引擎吗
随着MySQL 8.0的推出,系统表已经全面采用InnoDB引擎,不再需要MyISAM引擎。另外,MGR中也不支持MyISAM引擎。
老叶茶馆
2022/01/18
4830
java缓存设置_缓存数据可以清除吗
1、@Cacheable(key = “#vo.toString()”, value=”licence”) //载入缓存
全栈程序员站长
2022/11/09
1.6K0
Django | 页面数据的缓存与使用
一个动态网站的基本权衡点就是,它是动态的。 每次用户请求页面,服务器会重新计算。从开销处理的角度来看,这比你读取一个现成的标准文件的代价要昂贵的多
py3study
2020/01/16
1.9K0
Django | 页面数据的缓存与使用
Django-4 管理页面
Django 管理页面是查看我们的应用程序中当前数据的好方法,并且还为我们提供了用于创建或修改该数据的良好图形化界面展示。让我们开始吧:
XXXX-user
2019/07/23
6470
Django-4 管理页面
禁用页面缓存的几种方法(静态和动态)
 1、在Asp页面首部加入     Response.Buffer   =   True      JavaScript
Java架构师必看
2021/03/22
1.1K0
为何禁用MyBatis缓存
mybatis 缓存的是对象,是数据库resultSet经过DefaultResultSetHandler 处理后生成的java对象。
全栈程序员站长
2022/08/30
9550
JavaScript禁用页面刷新
JavaScript禁用页面刷新代码如下: //禁用F5刷新 document.onkeydown = function () { if (event.keyCode == 116) { event.keyCode = 0; event.cancelBubble = true; return false; } } //禁止右键弹出菜单 document.oncontextmenu = function () { return fals
磊哥
2018/05/08
4.9K0
html中input禁用缓存
方法一: 在不想使用缓存的input中添加 autocomplete="off" eg: <input type="text" autocomplete="off" name="test" />
botkenni
2019/09/03
2.6K0
从Django的Turotial中可以学到什么?
我自己在实现代码的过程中发现这个新手指导基本上就算是Django项目开发的一个缩影了。你完全可以做完它之后继续跟着它的思路走。从这个Tutorials中我们可以学到哪些东西呢?我自己总结了一下。
the5fire
2019/02/28
8530
Spring还可以这样用缓存,你知道吗?
大家在项目开发过程中,或多或少都用过缓存,为了减少数据库的压力,把数据放在缓存当中,当访问的请求过来时,直接从缓存读取。缓存一般都是基于内存的,读取速度比较快,市面上比较常见的缓存有:memcache、redis、mongodb、guava cache等。
小忽悠
2019/07/27
5210
小程序可以缓存视频吗?| 小程序问答 #24
小程序为何不能缓存视频?那又如何安全地清理小程序中的缓存数据呢?知晓程序(微信号 zxcx0101)今天就来为你解答这两个问题。
知晓君
2018/08/01
2.7K0
Redis 可以禁用的高危命令
redis一款高并发的内存K-V数据库,提供了好多命令,但是其中有部分对于生产环境来说比较危险,需要禁用掉。
zeekling
2022/08/26
8780
Django 缓存6.2
缓存 对于中等流量的网站来说,尽可能地减少开销是必要的。缓存数据就是为了保存那些需要很多计算资源的结果,这样的话就不必在下次重复消耗计算资源 Django自带了一个健壮的缓存系统来保存动态页面,避免对于每次请求都重新计算 Django提供了不同级别的缓存粒度:可以缓存特定视图的输出、可以仅仅缓存那些很难生产出来的部分、或者可以缓存整个网站 设置缓存 通过设置决定把数据缓存在哪里,是数据库中、文件系统还是在内存中 通过setting文件的CACHES配置来实现 参数TIMEOUT:缓存的默认过期时间,以秒为单
Lansonli
2021/10/09
3780
validateRequest=false 可以禁用请求验证[通俗易懂]
参看了MVP的利用WebClient和WebRequest类获得网页源代码于是想自己动手写点,当然是参考其的办法啦。
全栈程序员站长
2022/06/28
5890
快速禁用Chrome浏览器缓存
在前端的开发中,最麻烦的莫过于浏览器的缓存,经常需要清理缓存文件,导致开发效率较低。
用户1212940
2022/04/13
3K0
快速禁用Chrome浏览器缓存
Redis 可以禁用的高危命令
redis一款高并发的内存K-V数据库,提供了好多命令,但是其中有部分对于生产环境来说比较危险,需要禁用掉。
zeekling
2022/08/02
2.2K0
点击加载更多

相似问题

AndEngine Box2D Body GetContactList

14

如何旋转Box2d body?

10

Box2D:如何手动渲染body

32

Libgdx | Box2D | body冲突轮询

19

设置Box2d Body LIBGDX原点

115
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文