码迷,mamicode.com
首页 > 编程语言 > 详细

学习C++ Primer 的个人理解(六)

时间:2016-07-06 23:13:41      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:

第四章和第五章没什么特别的。基本上就是书本上的字面意思,也没什么需要注意的细节。直接记录第六章。

本章介绍了函数,其实也没什么特别的。但有几个重点

   1.形参的类型决定了形参和实参的交互方式。形参是引用,则它将绑定到实参上。

   2.实参的值拷贝给形参时,形参和实参是两个相互独立的对象。

      当初始化一个非引用类型变量时,初始值被拷贝给变量。此时对变量的改动不会影响初始值。

   3.对于指针形参,函数接收一个指针,实际上跟非引用类似,拷贝的是指针的值,两个指针是不同的指针

      C++中,建议用引用类型的形参代替指针

   4.当对象很大,拷贝往往比较低效,使用引用会更好。如果函数无须改变引用的值,则声明为常量引用。

   

   5.const形参和实参

    当实参初始化形参时会忽略顶层const。也就是说形参的顶层const被忽略了。当形参有顶层const时,给他传变量和常量都是可以的。

   6.形参的初始化方式和变量其实是一样的。

      我们可以使用非常量初始化一个底层const对象,反过来则不行。

 

   7.不要返回局部对象的引用或指针!

 

   8.返回数组指针 如:

      int (*func(int i))[10];

     尾置返回类型:

      auto func(int i) -> int(*) [10]

 

    9.constexpr函数 是指能用于常量表达式的函数。

      与普通函数定义方式不同的地方在于:

        返回类型和形参都得是字面值类型。

 

   10.函数指针

      函数的类型由返回类型和形参类型共同决定。如:

      bool lengthCompare (const string &, const string &)

      该函数类型是:

      bool (const string&, const string&)

学习C++ Primer 的个人理解(六)

标签:

原文地址:http://www.cnblogs.com/qita/p/5648232.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!