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

2403 人浏览 | 时间: 2015-06-26 21:06:05 | 作者: codexia
    使用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数组的起始地址
请微信扫码阅读。
为防止恶意爬虫,
已开启反爬机制,
理解哟~~~~
标注
评论
站内搜
百度搜
传送到手机
手机扫码,识别文字,完成传送x
加载中...
标注内容x
加载中...
添加标注x
收藏 0 点赞 0