CString GetBuffer()详解
来源:互联网 发布:淘宝商品详情怎么做 编辑:程序博客网 时间:2024/05/29 19:17
GetBuffer()主要作用是将字符串的缓冲区长度锁定,releaseBuffer则是解除锁定,使得CString对象在以后的代码中继续可以实现长度自适应增长的功能。
是否需要在GetBufer后面调用ReleaseBuffer(),是根据你的后面的程序是否需要继续使用该字符串变量,并且是否动态改变其长度而定的。不是什么好地编程习惯,之类的原因。
如果你GetBuffer以后程序自函数就退出,局部变量都不存在了,调用不掉用ReleaseBuffer没什么意义了。
但如果你出现例如下面的代码
CString m_strA;
m_strA=_T( "123456 ");
m_strA.GetBuffer(6);
m_strA+=_T( "789 ");//此时就会出错了,因为需要动态加长字符串长度
解决办法:
CString s1;
GetCurrentDirectory(_MAX_DIR,s1.GetBuffer(_MAX_DIR));
CString s2;
s2.Format( "s%s ",s1);
或者:
要相加之前加
s1.ReleaseBuffer();
- CString GetBuffer()详解
- CString的GetBuffer函数详解
- CString GetBuffer()
- CString GetBuffer用法,GetBuffer本质,GetBuffer常见问题
- CString GetBuffer() and ReleaseBuffer()
- CString GetBuffer() and ReleaseBuffer()
- Getbuffer ReleaseBuffer Cstring
- CString 的 GetBuffer
- CString 的GetBuffer函数
- CString的GetBuffer
- CString的GetBuffer用法
- CString的GetBuffer用法
- 转:CString 的 GetBuffer
- CString 的 GetBuffer
- CString的GetBuffer用法
- Getbuffer ReleaseBuffer Cstring
- CString的GetBuffer用法
- CString之GetBuffer,ReleaseBuffer
- JavaFX Script Programming Language 学习 No.5
- Sql语句汇总【2】
- 十进制转十六进制
- 精妙SQL语句介绍
- 从快速阅读能力的基础想到。。。
- CString GetBuffer()详解
- Google产品集
- oracle导出数据库
- 在UltraEdit中使用正则表达式
- ACCESS关键字
- JAVA的容器---List,Map,Set
- PostgreSQL备份和恢复
- 符合自然的饮食睡眠是最好的养生
- SAP库存类型与库存状态