首页  >   经验  >   CString数组内部的实现原理深入剖析

CString数组内部的实现原理深入剖析

查看 codexia 的博客 2015-06-26 21:06:05 2071
CString  
手机阅读 | 转发赚积分
手机收藏 | 分享给好友
简介在看到别人使用的CString数组代码时,因为对CString数组不熟,所以挺揪心的。我不知道CString数组如何动态增长,或者说,它如何处理动态增长,内部如何处理?为了解决这些疑惑,特地研究了一下,就写此文总结一下,分享给大家。
    使用char 数组时会发现,char数组的元素的长度是固定了的。也就是说,一旦,数组创建完毕,就不可变了。那如果我们想让数组元素的大小可以改变,那么在MFC中就使用CString数组,如果是纯C++环境中,使用string数组,都是可以达到要求的。本文只讲述CString数组的内部实现原理,string的讲解,将会单独讲解一篇文章。顺便提一下,如果想使用数组可以动态增加元素个数,甚至想数组元素个数可以动态调整且元素大小也可以动态调整,那么就使用string或者CString作为元素的STL容器vector吧。
    在MFC中使用CString数组代码如下:
CString str[] = {L"第一串CString",L"第二串CString",L"第三串CString"};
int iSize3 = sizeof(str[0]);// - 4字节,第一个CString对象的地址
int iSize4 = sizeof(str[1]);// - 4字节,第二个CString对象的地址
int iSize5 = sizeof(str[2]);// - 4字节,第三个CString对象的地址

/* - 调整元素的大小 - */
str[0]=L"增大CString 的长度。。。。。。。";
str[1]=L"增大CString 的长度。。。。。。。";
str[2]=L"增大CString 的长度。。。。。。。";

CString数组实现原理剖析:

0x0024F244   CString数组的起始地址
1.微信扫码
2.点击按钮,粘贴命令
自动刷新 手动刷新
命令:rd 9M4mE 复制
提示:如果您发送了命令,自动刷新会展开全文。自动刷新最多60秒,超过60秒请点击手动刷新。
创作不易,汗水不止!为防止劳动果实被爬虫窃取,开启了反爬机制,需要您发送命令继续阅读。取关会再次出现此提示。一段时间后出现此提示,请再次发送即可。如有问题,请加客服微信Freeme007处理。感谢您的理解。
标注
评论
站内搜
百度搜
传送到手机
手机扫码,识别文字,完成传送x
加载中...
标注内容x
加载中...
添加标注x
文章标题:CString数组内部的实现原理深入剖析
文章地址:http://www.cjjjs.com/article/62620155621247
转载到个人博客,请在文末带上右侧内容(含超链接):本文转载自:CString数组内部的实现原理深入剖析
收藏 0 点赞 0
公众号
微信赞赏
支付宝赞赏
领支付宝大红包
QQ群

相关阅读

  1. CString和string字符串的相互转换 查找全网同类文章
  2. 数据转换问题 CString 转换BYTE 的问题 查找全网同类文章
  3. CStringA和CStringW相互转换解决宽窄字符函数使用问题 查找全网同类文章
  4. string与Cstring转化小解 查找全网同类文章
  5. VS实战理解CString与String转换 查找全网同类文章
  6. CString 与 Byte 之间的 一点小问题 查找全网同类文章
  7. CString数组内部的实现原理深入剖析 查找全网同类文章
  8. 教你如何解决VS2015的30天试用期已过即VS2015许可证已过期的问题 查找全网同类文章
  9. Linux源码笔记——感觉写的巧妙的代码 查找全网同类文章
  10. 在Win7上安装VS2015 RC(候选发布版)失败完美解决方法 查找全网同类文章
分享到:
分享文章[CString数组内部的实现原理深入剖析]到QQ空间

相关阅读

猜您感兴趣