zoukankan      html  css  js  c++  java
  • OOP 1.4 内联函数和重载函数函数参数缺省值

    1、内联函数

    • 存在的背景:函数调用存在开销(调用时候参数压栈,返回地址压栈;返回时从栈取出返回地址,跳转到返回地址。总共需要几条指令的开销)。如果函数指令较少,调用多次,函数调用的开销占比大。
    • 内联函数的处理:编译器处理对内联函数的调用语句时,将整个函数代码插入到调用语句处,不会产生函数的语句。
    • 使用:在函数定义前面加入inline关键字
      • e.g. inline int max(int num1,int num2)
    • 弊处:可能会增大可执行程序的大小

    2、函数重载

    • 定义:一个或多个函数,名字相同,参数个数和类型不同。(如果是名字相同,参数表相同,返回值不同,不是重载是重复定义
    • e.g. int Max(double f1,double f2) int Max(int n1,int n2) int Max(int n1,int n2,int n3)为函数的重载
    • 作用:使得函数的命名简单
    • 编译过程:编译器通过调用语句的实参个数和类型判断调用的函数

    3、函数的缺省参数

    • 定义:定义函数的时候可以让最右边的连续若干个参数有缺省值,调用函数的时候,相应位置不传入参数,参数就是缺省(不能是中间的某个参数缺省)
    • 目的:提高程序的可扩充性
      • 如果已经写好的函数需要添加新的参数,可原来调用该函数的语句未必需要增加参数,使用缺省参数,可以避免对原来调用该函数的修改
  • 相关阅读:
    ajax发送请求
    Canvas与SVG的区别
    jquery中attr()和prop()方法的区别
    ab(Apache Benchmark)测试工具的安装
    Nginx与阻塞操作
    构造函数调用顺序
    对一个类求sizeof,虚继承
    代码清单16-4 服务器压力测试程序
    libevent源码分析-TCP服务端代码
    Linux内核源码之红黑树
  • 原文地址:https://www.cnblogs.com/fzu-031702148/p/8452124.html
Copyright © 2011-2022 走看看