C++Primer第五版学习笔记 第三章

第三章 字符串,向量和数组


命名空间

  • 域操作符::的含义是编译器应从操作符左侧名字所示的作用域中寻找右侧那个名字,因此,std::cin 的意思是要使用命名空间std中的名字cin。

  • 可以使用using声明命名空间,using namespace::name,如using std::cin; 声明了std标准库的cin。

  • 可以使用using声明整个命名空间,如using namespace std;

  • 位于头文件的代码,一般来说不应该使用using声明。这是因为头文件的内容会拷贝到所有引用它的文件去,如果头文件有using声明,那么使用了该头文件的文件都会有这个声明,可能会产生冲突。


string标准库

  • 声明string库
#include<string>
using std::string;
  • 初始化string对象
string s1;              // 默认初始化为空字符串
string s2 = s1;         // s1的副本
string s3 = 'string';   // 字符串的副本
string s4 = string(10, 's');  // 内容是'ssssssssss'
// 前面是拷贝初始化, 后面是直接初始化。
// 直接初始化的可读性更高!
string s5(10, 's');     // 同上
string s6('string');
  • string操作
操作 含义
cin>>s 输入字符串,以空格或回车键结尾
cout<<s 输出字符串
getline(cin, s) 从is中读取一行赋值给s
s.empty() 字符串为空返回True,否则false
s.size() 返回字符串长度,string::size_type类型
s[n] 返回下标为n的字符
s1+s2 返回s1和s2连接后的结果
s1=s2 赋值
s1==s2 s1!=s2 比较,大小写敏感
<, <=, >, >= 利用字典中的顺序对字符串比较,大小写敏感
  • 注意的是,由于size()函数返回的不是int类型,尽可能使用auto来自动判别size的返回值,避免int和unsigned混用带来的问题。

                
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值