c++ primer 学习摘抄之五 (第七章 函数)

本文详细解析了C++中函数参数传递、内联函数、引用参数、指针参数、重载操作符及函数参数表的省略等关键概念。深入探讨了这些机制如何影响程序性能和内存使用,提供了优化代码实践的指导。

1.如果函数已经被声明为inline( 内联),则函数体可能已经在编译期间它的调用点上就被展开,如果没有被声明为inline,则函数在运行时才被调用

2.尽管按值传递对内置数据类型的对象和小型类对象比较满意,但是对于大型类对象,它的效率就太低了。使用引用参数函数可以访问被指定为实参的类对象,而不必在函数的活动记录中拷贝它

3.如果一个参数可能在函数中指向不同的对象,或者这个参数可能不指向任何对象,则必须使用指针参数
引用参数的一个重要用法是它允许我们在有效地实现重载操作符的同时,还能保证用法的直观性

4.有时候我们无法列出传递给函数的所有实参的类型和数目,在这种情况下我们可以用省略号(...) 指定函数参数表

5.向一个函数传递参数发生错误的可能性随参数表的长度的增加而提高,作为一个通用规则8 个参数应该是最大值了。为了替换一个大型的参数,表程序员可以将参数声明为类、数组或某一种容器类型

6.inline 函数对编译器而言必须是可见的,以便它能够在调用点内联展开该函数。与非inline函数不同的是,inline 函数必须在调用该函数的每个文本文件中定义。当然对于同一程序的不同文件,如果inline 函数出现的话其定义必须相同。因此,建议把inline 函数的定义放到头文件中,在每个调用该inline函数的文件中包含该头文件。

7.int main( int argc, char *argv[] ) { ... }:argc 包含命令行选项的个数,argv 包含aygc 个C 风格字符串,代表了由空格分隔的命令选项。argv[0]总是被设置为当前正被调用的命令,从索引1 到argc-1 表示被传递给命令的实际选项。

8.对于指向函数的指针而言,只有当赋值操作符左边指针的参数表和返回类型与右边函数或指针的参数表和返回类型完全匹配时,初始化和赋值才是正确的;如果不匹配则将产生编译错误消息。在指向函数类型的指针之间不存在隐式类型转换

9.指向C 函数的指针与指向C++函数的指针类型不同。因此指向C 函数的指针不能用指向C++函数的指针初始化或赋值,反之亦然,如果没有这样做就会产生编译错误。

下载前可以先看下教程 https://pan.quark.cn/s/16a53f4bd595 小天才电话手表刷机教程 — 基础篇 我们将为您简单的介绍小天才电话手表新机型的简单刷机以及玩法,如adb工具的使用,magisk的刷入等等。 我们会确保您看完此教程后能够对Android系统有一个最基本的认识,以及能够成功通过magisk root您的手表,并安装您需要的第三方软件。 ADB Android Debug Bridge,简称,在android developer的adb文档中是这么描述它的: 是一种多功能命令行工具,可让您与设备进行通信。 该命令有助于各种设备操作,例如安装和调试应用程序。 提供对 Unix shell 的访问,您可以使用它在设备上运行各种命令。 它是一个客户端-服务器程序。 这听起来有些难以理解,因为您也没有必要去理解它,如果您对本文中的任何关键名词产生疑惑或兴趣,您都可以在搜索引擎中去搜索它,当然,我们会对其进行简单的解释:是一款在命令行中运行的,用于对Android设备进行调试的工具,并拥有比一般用户以及程序更高的权限,所以,我们可以使用它对Android设备进行最基本的调试操作。 而在小天才电话手表上启用它,您只需要这么做: - 打开拨号盘; - 输入; - 点按打开adb调试选项。 其次是电脑上的Android SDK Platform-Tools的安装,此工具是 Android SDK 的组件。 它包括与 Android 平台交互的工具,主要由和构成,如果您接触过Android开发,必然会使用到它,因为它包含在Android Studio等IDE中,当然,您可以独立下载,在下方选择对应的版本即可: - Download SDK Platform...
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值