inline内联函数 什么是内联函数?
什么是内联函数?
内联函数具有通用函数的特点,只有在函数调用的处理上不同于通用函数。调用一般函数时,程序的执行权应转移到被调用函数,然后返回到调用它的函数;调用内联函数时,调用表达式由内联函数的主体替换。在使用内联函数时,我们应该注意以下几点:
1。内联函数中不允许使用循环语句和开关语句。
如果内联函数有这些语句,编译器会将函数视为普通函数来生成函数调用代码。递归函数(调用它们自己的函数)不能用作内联函数。内联函数只适用于只有1-5行的小函数。对于包含许多语句的大型函数,函数调用和返回的代价相对较小,因此不必使用内联函数。
2. 内联函数的定义必须在第一次调用内联函数之前出现。
3. 在本专栏中提到的类结构中,类描述中定义的所有函数都是内联函数。
什么是内联函数啊~和普通的成员函数有什么区别吗?
内联函数定义:将函数定义为内联函数就是在程序中的每个调用点将其“内联”展开。在函数返回类型之前添加inline关键字。在类声明中定义的成员函数自动成为内联函数。内联函数的应用:
1。重复调用函数;
2。函数只有几行,不包含for、while和switch语句。内联函数应该在头文件中定义,这与其他函数不同。
普通函数与内联函数有什么区别?
1. 编译结果是不同的:内联函数(有时称为在线函数或编译时的扩展函数)是一种编程语言结构,用于建议编译器在线扩展某些特殊函数(有时称为在线扩展);换句话说,建议编译器插入指定的函数体并替换调用函数的每个位置(上下文)。普通函数被编译为单独的模块。
2. 编译时间不同:对于基于C的编译系统,使用内联函数可能会大大增加编译时间,因为调用函数的每个地方都需要用函数体来代替,代码量的增加也会带来编译时间的潜在增加。
3. 运行效率不同:在使用内联函数时,必须平衡程序占用的空间和程序执行的效率,因为太多复杂的函数会带来大量的存储资源。源:-函数源:-内联函数
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。