string的理解
来源:互联网 发布:nginx 域名重定向为ip 编辑:程序博客网 时间:2024/05/19 16:35
浅谈对STL string的认识
大体简单的可以理解为C++ string 为c字符操作数据的封装。
private:
chr* m_pcdata; //存数据末尾是'\0'
public:
Operation //各种字符串操作
***默认string 初始化 alloc的空间是8 capability()=8 size()=length() =0
***辅助函数会检索字符串末尾,自动添加NULL
***push_back检索空间是否够,如果够直接在后面添加字符,添加NULL
***其余的Insert Append 都是创建新字符串,复制。删除
***重载了<< >>符号,参考下列代码。
****输入输出遇到/0都停止 string st("hello\0word"); size = 5
**** 理解string 分配的空间Capacity和Size区别
string szInPut (1000,'0');
cout<<szInPutPrompt<<endl;
cin>>szInPut; // size = 输入个数 但是Capacity没有变。后面的‘0’存在
return szInPut;
**** 内存管理自动检测空间是否足够,如果不够重新分配。
******Append具体根据函数参数决定,内存管理方式。
详细的理解 template< class CharT,class Traits=char_traits<CharT>,class
Alloc>
class basic_string.
CharT是表示字符类型,char w_chart
char_traint 完全特化 使用string.h里面的方法 里面封装了字符串的操作结构,
char_traint_base 提供了字符串的操作函数函数 非string.h
String_alloc_base 提供的是字串的内存分配和管理 三个指针 M_start M_end
M_end_of_storage
baseic_string 可以简单理解继承上面类,这里忽略中间(String_base),对理解暂时没帮
助,
- 对String的理解
- string编码的理解
- string编码的理解
- string 的理解
- string的理解
- 关于string的理解
- String内部的理解
- string::size_type 的理解
- String的理解
- String的一些理解
- 对String的深刻理解
- 对String的深刻理解
- string编码的理解收藏
- 理解c#的String类型。
- 转发对String 的理解
- Java String 的简单理解
- 关于String类的理解
- 理解C#的string类型
- bitmap 设置图片尺寸,避免 内存溢出 OutOfMemoryError的优化方法
- 关于Python的流程控制语句
- 我想玩你的那个小鸟了
- Remoting 全接触1
- ListView分页(带图片)显示用法案例
- string的理解
- MMS发送流程 Android2.2
- 学习AES加密类
- 四郎探母
- windows 2008server 修改系统的默认远程连接数
- mysql将时间戳转成常用可读时间格式
- Stay Hungry, Stay Foolish--2005斯坦福大学05年毕业演讲
- Remoting 全接触2
- 一串字字符中多个逗号转换为一个,既标准分隔符(正则表达式)