zoukankan      html  css  js  c++  java
  • 22)函数重载

    1)定义:函数重载:规则:

              (1)他们的作用域必须是一样的

              (2)函数的名字一样

              (3)参数个数不同,参数的类型不同,参数的顺序不一样,均可以构成重载

              (4)返回值类型不同则不能构成重载

     1 #include<iostream>
     2 //如下面的两个函数,不是虫重载,而且有严重的错误,不可以这么写
     3 int fun(int a)
     4 {
     5     printf("dkas");
     6     return 2;
     7 }
     8 char fun(int a)
     9 {
    10     printf("11111111");
    11     return 'a';
    12 }
    13 int main()
    14 {
    15     fun(10,20);
    16     printf("
    ");
    17     fun(10,'a');
    18 
    19     return 0;
    20 
    21 
    22 }

    2)注意:如果要是函数重载的话,就不要默认参数,为了避免调用时出现函数冲突

    3)函数重载涉及的函数调用规则:

            如果能严格匹配,就直接调用这个严格匹配的,

            如果没有完全匹配的,就调用隐式转换,

            如果还是匹配不到,则调用失败。

    4)  

          

    5)C++重载的底层实现 

          

      其实就是,在我们的编译器的  表格里面,函数的名字虽然我们看上去是一样的,但是实际上在表格中存的是不一样的。

    5)要想函数重载,就别带有默认参数,要想带默认参数,就别函数重载

         (因为,当你少写一个参数时,系统不知道,你是函数重载,还是嗲用带有默认参数的函数)

  • 相关阅读:
    20200924-2 功能测试
    作业要求20200924-4 代码规范,结对要求
    20200924-1 每周例行报告
    20200929-git地址
    白名单
    作业要求 20200917-1 每周例行报告
    词频统计 SPEC
    20200910-1 每周例行报告
    20200924-3 单元测试,结对
    20200924-5 四则运算试题生成,结对
  • 原文地址:https://www.cnblogs.com/xiaoyoucai/p/8179231.html
Copyright © 2011-2022 走看看