C++新标准

作者: 火宣 | 来源:发表于2015-09-29 15:24 被阅读72次

C++11和 C++14的推出,新的技术,新的代码方式不断出现,码农需努力啊!

关键词 default

在 C++中,有4种特殊函数

构造函数,拷贝构造函数,析构函数,拷贝赋值函数

一个类即使不声明上述4个函数,当代码被编译并且需要时,编译器会自动生成.

构造函数一旦声明带参数的,需手动写一个空的函数体.

虚析构函数,在旧式0x 中通常都是为空函数.

....

这些函数都在源代码中存在!可能某些编译器会优化掉代码,但不确保所有编译器都会优化.

而 default 就是了为了解决这问题的.

例如:

class A{

public: A() =default;

A(const A&) = default;

virtual ~A()=default;

A& operator=(const A&) = default;

};

常用的是 A() = default; 和 virtual ~A()=default;

这样写比写一个空白函数更加优化;

关键词 delete

不允许访问某个函数,达到类似被删除的效果.其实针对的是拷贝构造函数,带参数的构造函数等.

例如

class A{

public: 

     A() = delete;

     A(int i){}

};

实际代码:

A a;//error

A b(2);//ok

相关文章

  • 014 使用尾置返回类型

    在 C++ 11 新标准中还有一种可以简化 《C++ 返回数组指针》 中提到的 getArrayType 声明的方...

  • C++新标准

    C++11和 C++14的推出,新的技术,新的代码方式不断出现,码农需努力啊! 关键词 default 在 C++...

  • 019 使用 shrink_to_fit 要求容器退回不需要的内

    在 C++ 11 新标准中,我们可以调用 shrink_to_fit 来要求 deque、vector 或 str...

  • C++ Primer Plus 第6版 中文版.pdf

    《C++ Primer Plus中文版(第6版)》是一本经久不衰的C++畅销经典教程,是第一本支持C++11新标准...

  • C++并发编程实战介绍附下载

    《C++并发编程实战》是一本基于C++11新标准的并发和多线程编程深度指南。内容包括从std::thread、st...

  • C++11之auto

    此前,在C和C++中使用参数必须明确的指出其类型。比如: 在新标准中,通过关键字auto可以实现替代类型说明。比如...

  • 002 constexpr

    C++ 11 新标准规定,允许将变量声明为 constexpr 类型以便由编译器来验证变量的值是否是一个常量表达式...

  • 教师使用说明

    1、点击跳转《下载安装说明》,安装 “新标准教育” APP。 2、点击跳转《注册登录说明》,注册并登录 “新标准教...

  • 学生使用说明

    1、点击跳转《下载安装说明》,安装“新标准教育”APP。 2、点击跳转《注册登录说明》,注册并登录“新标准教育”智...

  • 家长使用说明

    1、点击跳转《下载安装说明》,安装“新标准教育”APP。 2、点击跳转《注册登录说明》,注册并登录“新标准教育”智...

网友评论

    本文标题:C++新标准

    本文链接:https://www.haomeiwen.com/subject/xagwcttx.html