搜索
编程论坛
→
开发语言
→
C++论坛
→
『 VC++/MFC 』
→ 这两个CString对象怎么无法拼接?
标题:
这两个CString对象怎么无法拼接?
只看楼主
andyandy
等 级:
论坛游民
威 望:
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
来 自:湖南张家界
等 级:
贵宾
威 望:
24
帖 子:1386
专家分:6999
注 册:2010-3-8
第
2
楼
得分:20
str.GetBuffer(str.GetLength())后调用下 str.releasebuffer()就可以了
其实原理就是GetBuffer提供了一段可写的内存,当我们在此内存中写完数据后,该类并不知道我们写完了,也不知道我们写了多长的内容。
所以要用ReleaseBuffer告诉它我们已经写完了,可以收尾了。
我们用这个操作可以避免用new或者malloc来操作
[
本帖最后由 hahayezhe 于 2011-6-10 22:22 编辑
]
2011-06-10 22:15
2
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-342400-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.399590 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved