| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1964 人关注过本帖
标题:这两个CString对象怎么无法拼接?
只看楼主 加入收藏
andyandy
Rank: 2
等 级:论坛游民
威 望:1
帖 子:108
专家分:94
注 册:2009-4-28
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:1 
这两个CString对象怎么无法拼接?
有这么一段程序——
float a=-999.999;
CString str0,str;
str0="abc";
gcvt(a,8,str.GetBuffer(str.GetLength()));
str0 += str;
调试发现,str0不变。
a转换成str是正确的。
大侠帮帮我。先谢过。     
搜索更多相关主题的帖子: 拼接 
2011-06-10 11:31
hahayezhe
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:湖南张家界
等 级:贵宾
威 望:24
帖 子:1386
专家分:6999
注 册:2010-3-8
收藏
得分:20 
str.GetBuffer(str.GetLength())后调用下 str.releasebuffer()就可以了

其实原理就是GetBuffer提供了一段可写的内存,当我们在此内存中写完数据后,该类并不知道我们写完了,也不知道我们写了多长的内容。
所以要用ReleaseBuffer告诉它我们已经写完了,可以收尾了。

我们用这个操作可以避免用new或者malloc来操作

[ 本帖最后由 hahayezhe 于 2011-6-10 22:22 编辑 ]
2011-06-10 22:15
快速回复:这两个CString对象怎么无法拼接?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.030253 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved