您的位置:首页 > 教育 > 锐评 > C++ Primer Plus笔记: 2024.09.07

C++ Primer Plus笔记: 2024.09.07

2025/6/12 16:32:43 来源:https://blog.csdn.net/weixin_43638873/article/details/142315531  浏览:    关键词:C++ Primer Plus笔记: 2024.09.07

1.编译过程的最终产品是可执行程序—— 由一组机器指令组成。运行程序时,操作系统将这些指令载入计算机内存中,因此每条指令都有特定的内存地址,计算机随后就会逐步执行这些指令。有时会跳过一些指令,向前向后跳到特定地址。

2.常规函数: 执行到函数调用指令时,程序将在函数调用后立即存储该函数的内存地址。并将函数参数复制到堆栈(为此保留的内存块),跳到标记函数起点的内存单元,执行函数代码(也许还需要将返回值放入寄存器中),然后跳回到地址被保存的指令处。
(这个过程就类似于看书的时候停下来看脚注,看完脚注后再返回原来的地方)

3.内联函数: 编译器使用相应的函数代码替换函数调用,程序无需跳到另一个地方执行代码,再跳回来。这样运行速度比常规函数稍快,但是要占用更多内存。

4.内联函数不能递归,如果函数占用多行,则将其最为内联函数就不合适

5.如果使用C语言的宏执行了类似函数的功能,则应该转换成C++的内联函数。

6.引用变量的主要用途是用作函数的形参,通过将引用作为形参,函数将使用原始数据而不是副本。

7.引用在声明的同时一定要初始化,不然就会:

firstref.cpp: In function ‘int main()’:
firstref.cpp:7:8: error: ‘rodents’ declared as reference but not initializedint & rodents ;^~~~~~~

8.不能通过赋值设置引用

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com