温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么使用C++函数类型与重载函数

发布时间:2021-11-19 14:35:50 来源:亿速云 阅读:128 作者:iii 栏目:开发技术

本篇内容介绍了“怎么使用C++函数类型与重载函数”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

    1.首先对重载函数,明确函数的返回类型不能决定重载函数的类别,即

    int F(int ,int) ;//一个返回 int 类型的函数
    void F(int ,int);//一个无返回值的函数
    //两者形参列表相同,返回值类型不同,但两者不构成重载函数

    2.注意形参列表中的默认值,使用含默认参数的重载函数时可能会产生二义性。例:

    int a = 0;
    int Max(int,int);
    int Max(int,int,int = 0);
    //则对Max(3,5)的调用会报错
     a = Max(3,5);           //错误

    另外,对默认参数,应该在函数名第一次给出的时候指定,通常在函数原型中。若已在函数原型中指定默认参数,则函数定义时不能重复给出。

    问题:

    在一道题中我看到了这样一个问题,简述起来就是让你调用一个值传递的重载函数和一个引用传递的重载函数,

    #include<iostream>
    using namespace std;
    void F(int &a, int &b) {
    	a = a + b;
    	cout << a<<endl;
    }
    int F(int a, int b,) {
    	return a + b;
    }
    int main(){
    cout<<F(a,b);
    F(a,b);
    }

    此时调用两个F函数就会报错,那如何改变函数类型来避免函数调用不明确呢?

    我是这样做的,

    #include<iostream>
    using namespace std;
    void F(int &a, int &b) {
    	a = a + b;
    	cout << a<<endl;
    }
    int F(int a, int b,int c) {
    	return a + b;
    }
    int main(){
    int a = 10;
    int b = 20;
    cout << F(a, b,1)<<endl;
    	F(a,b);
    }

    即通过一个无用变量来避免类型相似。

    “怎么使用C++函数类型与重载函数”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

    向AI问一下细节

    免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

    c++
    AI