zoukankan      html  css  js  c++  java
  • C++中重载函数的理解

    一.重载函数的定义

    函数的重载是一种特殊情况,C++允许在同一作用域中声明几个类似的同名函数,这些同名函数的形参列表

    (参数个数,类型,顺序)必须不同,常用来处理实现功能类似数据类型不同的问题。

    在C++中不仅函数可以重载,运算符也可以重载。

    运算符<<>>。既可以做移位运算符,也可以做输出,输入运算符。
    注意:重载函数的参数个数,参数类型或参数顺序三者中必须有一个不同。

    函数重载的规则:

    *函数名称必须相同。

    *参数列表必须不同(个数不同,类型不同,参数排列顺序不同等)。

    *函数的返回类型也可以相同也可以不相同。

    *仅仅返回类型不同不足以成为函数的重载。

    二.函数重载的作用

    重载函数通常用来在同一作用域内 用同一个函数名 命名一组功能相似的函数,

    这样做减少了函数名的数量,避免了名字空间的污染,也大大方便了代码的书写,可读性很强。

    三.重载底层编译的原理

    因为函数名一样,我们根据参数列表对函数进行重命名,

    这样的话底层编译就可以识别不同功能的重载函数了。

    例:void Swap(int a , int b);

             Swap_int_int;

            void Swap(float a, float b);

           Swap_float_float;

           void Swap(float a, float b);

           Swap_float_float;

    我们可以这样去理解,先重命名函数,再去调用函数。

  • 相关阅读:
    D. Constructing the Array
    B. Navigation System
    B. Dreamoon Likes Sequences
    A. Linova and Kingdom
    G. Special Permutation
    B. Xenia and Colorful Gems
    Firetrucks Are Red
    java getInstance()的使用
    java 静态代理和动态代理
    java 类加载机制和反射机制
  • 原文地址:https://www.cnblogs.com/tanshengjiang/p/13296756.html
Copyright © 2011-2022 走看看