门户
书籍
教程
论坛
问答
下载
签到
个人空间
帐号
自动登录
找回密码
密码
登录
立即注册
账号
自动登录
找回密码
密码
登录
立即注册
请绘制轨迹完成人机验证
由vaptcha提供技术支持
登录
注册
搜索
搜索
搜索
热搜
qml
quick
串口
输入中文
数据库
arm
百度地图
qt聊天
QT安装
安装
多窗口
中文乱码
聊天
局域网
鼠标
QT
图片
乱码
rs485通讯
多线程
android
多文档编辑器
本版
用户
本版
用户
【HUX】问题互助平台
博客
动态
好友
帖子
收藏
道具
勋章
任务
淘帖
动态
日志
相册
分享
记录
留言板
群组
门户
导读
排行榜
设置
我的收藏
退出
Qt开源社区
›
精华区(请在“有问必答”发帖)
›
有问必答
›
程序调试
›
请教,QT的接口中,有些入参 带了个 & 符号,请问表示什 ...
发布主题
返回列表
请教,QT的接口中,有些入参 带了个 & 符号,请问表示什.....
8
回复
8948
查看
[复制链接]
another_qt
当前离线
积分
141
another_qt
累计签到:11 天
连续签到:1 天
来源:
2015-1-23 17:11:32
显示全部楼层
|
阅读模式
4
Qter豆
如题。例如:
QString & append ( const QString & str );
其返回值类型的 & 和 入参中的& 各表示什么意思?
最佳答案
一叶知秋
查看完整内容
这个就是性能上的问题了,对于传进去的参数不会改变,最好加一个const, 而使用引用不是直接使用QString str,则是性能的问题,使用QString str的方式,会发生一次拷贝赋值,这会降低函数的性能。。。
相关帖子
Qt调用com组件问题
关于在Qt单线程中建立了多个UDP接口出现莫名错误问题。
QT 如何访问Web Service接口
qt如何调用必应壁纸的api
回复
使用道具
举报
一叶知秋
当前离线
积分
1027
一叶知秋
累计签到:882 天
连续签到:3 天
2015-1-23 17:11:33
显示全部楼层
这个就是性能上的问题了,对于传进去的参数不会改变,最好加一个const, 而使用引用不是直接使用QString str,则是性能的问题,使用QString str的方式,会发生一次拷贝赋值,这会降低函数的性能。。。
回复
使用道具
举报
一叶知秋
当前离线
积分
1027
一叶知秋
累计签到:882 天
连续签到:3 天
2015-1-23 17:29:12
显示全部楼层
都是引用啊 你传进去一个字符串 他给你生成一个新的字符串
回复
使用道具
举报
another_qt
当前离线
积分
141
another_qt
累计签到:11 天
连续签到:1 天
2015-1-24 08:37:27
显示全部楼层
如果是重新生成一个新的字符串,那加不加 & 应该也是一样的吧。
比如: QString & append ( QString str ); 我传一个 QString 进去,它也会在自己的栈上生成一个字符串吧?
回复
使用道具
举报
sywh
当前离线
积分
672
sywh
累计签到:595 天
连续签到:1 天
2015-1-24 08:53:00
显示全部楼层
用法上都可以,但是对CPU来说有点类似去逛个商店,一个走直线过去500米,一个绕一个大圈过去10000米。
回复
使用道具
举报
another_qt
当前离线
积分
141
another_qt
累计签到:11 天
连续签到:1 天
2015-1-26 11:37:23
显示全部楼层
“而使用引用不是直接使用QString str,则是性能的问题,使用QString str的方式,会发生一次拷贝赋值”------你的意思是, 使用了 加 & 的方式来传参数,没有拷贝的动作。也就是 append 函数是不会在它自己是栈上生成一个字符串的? 这跟实际上相当于传入一个指向 QString 的指针了。
回复
使用道具
举报
一叶知秋
当前离线
积分
1027
一叶知秋
累计签到:882 天
连续签到:3 天
2015-1-31 16:47:51
显示全部楼层
我没有深入研究过引用的本质,但是依据教科书的说法,引用其实就是一个别名,对引用的操作就是对被引用变量本身的操作,从结果上看他是有指针的影子的,但是应该并不是传入一个指针,楼主可以去查查资料
回复
使用道具
举报
another_qt
当前离线
积分
141
another_qt
累计签到:11 天
连续签到:1 天
2015-7-20 15:06:13
显示全部楼层
一叶知秋 发表于 2015-1-31 16:47
我没有深入研究过引用的本质,但是依据教科书的说法,引用其实就是一个别名,对引用的操作就是对被引用变量 ...
下面这个链接解释得相当到位和清晰:
http://blog.csdn.net/dujiangyan101/article/details/2844138
回复
使用道具
举报
一叶知秋
当前离线
积分
1027
一叶知秋
累计签到:882 天
连续签到:3 天
2015-7-20 15:18:24
显示全部楼层
嗯,写的不错。。。。。
回复
使用道具
举报
返回列表
发表新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满)
我知道了