这是一篇用来记录C++旅程中,涉及到编译器行为的文章,因为实在感觉编译是一个比较神奇的过程。“神秘的”编译器在程序运行时都做了些什么,本文将持续关注和更新!
在函数返回值时:
这种情况下编译器会在主函数中创建一个无名临时对象。要知道, 被调函数中的局部变量只能在被调函数中存在,不可能在返回主函数后继续生存。必须借助无名临时对象的帮助才能将值传回。
内联函数:
内联函数在某种程度上解决函数调用带来的执行效率问题,原因就是
内联函数不是在调用时发生控制转移,而是在编译时将函数体嵌入在每一个调用处。
声明:参考《C++语言程序设计(第四版)》
本文探讨了C++编译器在函数返回值时如何通过创建无名临时对象传递值,以及内联函数如何提高执行效率。内联函数通过在编译时将函数体直接嵌入到调用处来避免函数调用开销。
1361

被折叠的 条评论
为什么被折叠?



