STL学习笔记----C++的新语言特性

作者:winterTTr ( 转载请注明 )  资料来源:《STL标准库》

 

 

 

今天主要总结一下C++的新语言特性

 

1.模板

基本上STL中的大部分都是使用模板来编写的,主语是为了便于多种类型的使用。

对于模板本身,C++还有一些特别的支持

  • 无类型模板参数

  • 默认模板参数

  • typename关键字的引入
  • 成员模板函数:主要用于类型转换
  • 嵌套模板类

2.基础类型的显式初始化

 

3.异常捕获机制

对于异常返回,可以理解为函数本身的一种return。当然所有的栈空间的变量,都会被释放(析构)。

异常会一直返回,知道接触到main或者被catch捕获。

 

4.命名空间

类似java等中的package,为了避免名字污染。

 

5.bool类型的引入

同时引入false和true

 

6.explicit关键字

这是为了方式在初始化函数中的隐式转换

 

7.新的类型转换函数

static_cast用于逻辑上可以转换的,例如:

dynamic_cast用于按照类型进行向上转换

注意点:如果使用dynamic_cast进行引用转换的时候,失败的话会抛出bad_cast异常

 

const_cast转换掉变量的const属性

 

reinterpret_cast按照另一种变量类型重新读取变量的内容

 

8.初始化静态成员变量

 

9.可以定义没有返回值的main

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值