第十六章 string类和标准模板库

1.string类

1.1.构造函数:细节很多,很多string类的构造用法都挺有意思的,需要了解。

1.2.输入:string类和cin的配合,有很多细节,其中有一个挺不错,即getline将改变string类的大小,使其刚好储存;其余细节也很重要。

1.3.其次是一些运算符重载和一些方法,相当于一种string的拓展。

1.4.来源:string类其实是一个类模板具体化而来,这个类模板是基础string类,包含其他的一些具体化。

2.智能指针模板类

2.1.由来:由于异常引发的栈解退并不释放动态内存,在delete语句无法执行的情况下,内存发生泄漏;与此同时,将指针设计为一种类,这个类可以自动delete来自new的地址,这个类其他功能与正常指针别无两样;源于这个设计理念,智能指针类出世。

2.2.三种智能指针类模板:auto、unique、share。

2.3.缺陷:赋值然后析构时,两个对象将对同一个地址析构;因此出现后两种智能指针类模板以解决问题。unique引用所有权概念,并且禁止赋值,但可以使用特殊的move函数;share增加计数器,可以赋值,并且合理析构。当一个地址被多个指针承载时候,考虑share;若非如此,考虑unique。实现的细节很多,建议看书。

3.泛型编程

吐槽:理念就让我有不知所措了,感觉要看点视频理解。以后再补充相关内容。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值