C++ STL中的容器-String

本文详细介绍了C++标准模板库(STL)中的String容器。包括String的初始化方式、拷贝初始化的区别以及如何通过getline函数读取整行内容。此外,还讲解了如何使用const_iterator进行只读访问。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C++ STL中的容器-String

C++ STL中最基本以及最常用的类或容器无非就是以下几个:

  1. string
  2. vector
  3. set
  4. list
  5. map

String

用string初始化字符串分两类:用“=”号就是拷贝初始化,否则就是直接初始化。这里写图片描述

string s1;//初始化字符串,空字符串
string s2 = s1; //拷贝初始化,深拷贝字符串
string s3 = "I am Yasuo"; //直接初始化,s3存了字符串
string s4(10, 'a'); //s4存的字符串是aaaaaaaaaa
string s5(s4); //拷贝初始化,深拷贝字符串
string s6("I am Ali"); //直接初始化
string s7 = string(6, 'c'); //拷贝初始化,cccccc

这里写图片描述
使用cin读入字符串时,遇到空白就停止读取,有时我们想把一个句子存下来,又不想像上面那样创建多个string来存储单词,怎么办?那就是用getline来获取一整行内容。\

string str;
getline(cin, str);
cout << str << endl;

这里写图片描述
可以是使用const_iterator使得访问元素时是能读不能写,这跟常量指针意思差不多。

string str2("hi sysu");
for (string::const_iterator it = str2.begin(); it != str2.end(); it++)
{
    cout << *it << endl;
    *it = 'l'; //这是错误的,不能写
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值