C++进阶篇1:字符串

新的一年了,祝各位新年好,祝大家在新的一年里心想事成,万事如意,不脱发

同时也为武汉祈福,向所有拼命在一线工作的医务工作者致敬。

进入正题,其实很早就像写一些有关于数据结构的文章了,但一直没时间也没精力去做,趁着过年,就随便写写吧(反正也没人看)。

C++ STL意思是标准模板库,是泛型编程的一种。所谓泛型编程关注的是算法,而非数据。

字符串

字符串实质是以null字符'\0'终止的一维字符数组。而在STL编程中,字符串通常是指字符串类

字符串类

在STL中只有一个字符串类,即basic_string,string类有六个构造函数。

string类支持cingetline()两种输入方式,格式为:

string stuff;
cin >> stuff;
getline(cin, stuff);

其中string stuff为创建string类的对象stuff。

auto_ptr智能指针

auto_ptr类主要用于管理动态内存分配

要使用auto_ptr对象,必须包含头文件<memory>

string成员函数

下表是string类所有的成员函数及它们的功能。

函数名称功能
构造函数产生或复制字符串
析构函数销毁字符串
=,assign赋新值
Swap交换两个字符串的内容
+=,append(),push_back()添加字符
insert()插入字符
erase()删除字符
clear()移除全部字符
resize()改变字符数量
replace()替换字符
+串联字符串
==,!=,<,<=,>,>=,compare()比较字符串内容
size(),length()返回字符串长度
max_size()返回字符串最大允许个数
empty()查询字符串是否为空
capacity()返回重新分配之前的字符容量
reserve()保留内存以储存一定数量的字符
[],at()操作单一字符
>>,getline()从stream中读取某值
<<将值写入stream
copy()将内容复制为一个C-string
c_str()将内容以C-string的形式返回
data()将内容以字符数组形式返回
substr()返回子字符串
find()搜寻某子字符串或字符
begin(),end()提供正向迭代器支持
rbegin(),rend()提供反向迭代器支持
get_allocator()返回配置器

有关于这些函数和智能指针的相关用法,我会在后面的文章中以实例来详细说明,学不动了,溜了…

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值