C++11新特性
Bussy-Lake
打工搬砖
展开
-
C++11新特性之final和override
在正常的编码中,根据业务需要,派生类可以重载父类的成员函数,但是在某些场景必须只能用父类的成员函数进行操作或者父类的成员函数已经可以满足业务需求,这个时候限定不能去重载。但是这只是一个个人行为意识的限定,如果换人来开发肯定会不注意这一点,为了避免这样的错误产生,引入了final,在基类的函数中加入final限定符,就是为了限定住不能去重载该成员函数。#include<iostream>...原创 2020-03-19 23:47:26 · 261 阅读 · 0 评论 -
C++11新特性之智能指针(二)——unique_ptr
智能指针——unique_ptrunique_ptr对应的是shared_ptr,是一个独占的智能指针,不能和别的智能指针共享资源,当原型指针被销毁的时候,它就调用析构函数,删除与其的托管关系。初始化不能用make_shared的方式,不过C++14中有了make_unqiue,如果IDE不支持C++14,那只能用最原始的初始化方式进行初始化。For example:std:unique&...原创 2020-03-13 13:30:15 · 155 阅读 · 0 评论 -
C++新特性之智能指针(一)——shared_ptr
智能指针之shared_prt为啥要有智能指针,因为要自己手动分配内存还要自己释放回收,太麻烦,万一忘记了还很容易造成内存泄漏。所以,类似与java内存托管的智能指针来了,C11很重要,使用频率也很高的一个特性。shared_ptr遵循共享资源,多个智能指针对象可以共享这一块资源,the wonderful world comes from sharing.一、创建以及初始化 std:...原创 2020-03-09 19:01:59 · 543 阅读 · 1 评论 -
C++11新特性之lambda表达式
C++11新特性之lambdalambda表达式在日常的编程中使用频率还是比较高的,属于C++11比较重要的一个特性。一、概念以及基本结构lambda表达式定义了一个匿名函数,并且可以捕获lambda表达式所在作用范围的变量,语法结构如下:[capture] (param) opt -> ret {body;};1、[capture]:捕获对象列表,必选;2、(param):...原创 2020-03-06 13:27:36 · 188 阅读 · 0 评论 -
C++11新特性之auto
C++11新特性之atuo一、auto的解释在讲auto之前,先讲一下auto的一个兄弟——var。C#从Visual3.0开始有了隐式类型var,作用就是用来进行类型推导,所以世界是属于懒人的,进度的源泉就是创造。回到auto上来,对于C++这也不陌生了,新在赋予它新的作用,但确实在在C98上就有了auto,在旧的标准中它代表“具有自动存储期的局部变量”,估计都会郁闷,普通的局部变量不就有生...原创 2020-03-03 23:28:47 · 537 阅读 · 0 评论