C/C++教程

C++11新特性总结

本文主要是介绍C++11新特性总结,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

C++11 是第二个真正意义上的 C++ 标准,也是 C++ 的一次重大升级。C++11 增加了很多现代编程语言的特性,比如自动类型推导智能指针lambda 表达式等,这使得 C++ 看起来又酷又潮,一点也不输 Java 和 C#。虽然学习 C++11 需要花些时间,但这是非常值得的;C++11 非常实用,它不但提高了开发效率,还让程序更加健壮和优雅

截止到2020 年,C++ 的发展历经了以下 3 个个标准:

  • 2011 年,新的 C++ 11 标准诞生,用于取代 C++ 98 标准。此标准还有一个别名,为“C++ 0x”;
  • 2014 年,C++ 14 标准发布,该标准库对 C++ 11 标准库做了更优的修改和更新;
  • 2017 年底,C++ 17 标准正式颁布。

所谓标准,即明确 C++ 代码的编写规范,所有的 C++ 程序员都应遵守此标准。

目录:

  • C++ auto类型推导完全攻略

 

 

 

C++ auto类型推导完全攻略

C++11 赋予 auto 关键字新的含义,使用它来做自动类型推导。也就是说,使用了 auto 关键字以后,编译器会在编译期间自动推导出变量的类型,这样我们就不用手动指明变量的数据类型了。

auto 关键字基本的使用语法如下:

auto name = value;

注意:auto 仅仅是一个占位符,在编译器期间它会被真正的类型所替代。或者说,C++ 中的变量必须是有明确类型的,只是这个类型是由编译器自己推导出来的。  

auto 类型推导的简单例子:

auto n = 10;
auto f = 12.8;
auto p = &n;
auto url = "haohaoxuexi";
  • 第 1 行中,10 是一个整数,默认是 int 类型,所以推导出变量 n 的类型是 int。
  • 第 2 行中,12.8 是一个小数,默认是 double 类型,所以推导出变量 f 的类型是 double。
  • 第 3 行中,&n 的结果是一个 int* 类型的指针,所以推导出变量 f 的类型是 int*。
  • 第 4 行中,由双引号""包围起来的字符串是 const char* 类型,所以推导出变量 url 的类型是 const char*,也即一个常量指针

  

这篇关于C++11新特性总结的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!