c++ 硬核学习 构造函数

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_41616600/article/details/99986814

cpp中函数的构造以及调用

cpp中函数的构造

返回类型 函数名(形式参数1,形式参数2,形式参数3 ......)
{
	函数体;
}

最后的返回类型一定要和定义函数时候的返回类型相同,如果不同会强制转换成构造函数的返回类型,在调用函数的时候,也要符合函数定义的类型,如果不同,强制转换成调用函数时那个变量的类型
如果定义函数类型、函数返回类型、调用函数时赋予的变量数据类型 均一致
例如

// helloworld.cpp: 定义控制台应用程序的入口点。
//
#include <iostream>
using namespace std;
//命名空间

float add(int num1,float num2)
{
	float result;
	result = num1 + num2;
    return result;
}
int main()
{
    /**************  函数  **************/
    int a = 100;
    float b = 50.89;
    float k;
    k = add(a,b);
    cout << k << typeid(k).name() << endl;

    return 0;
}


输出

150.89float

如果定义函数类型和函数返回类型一致,与调用函数时赋予的变量数据类型 不一致

// helloworld.cpp: 定义控制台应用程序的入口点。
//
#include <iostream>
using namespace std;
//命名空间

float add(int num1,float num2)
{
	float result;
	result = num1 + num2;
    return result;
}
int main()
{
    /**************  函数  **************/
    int a = 100;
    float b = 50.89;
    int k;
    k = add(a,b);
    cout << k << typeid(k).name() << endl;

    return 0;
}

输出

150int

函数返回的值应该是150.89,但是因为返回值给了int类型的k,所以编程了150

如果函数定义和返回值类型不一致,函数定义和调用函数所赋予的变量类型一致

// helloworld.cpp: 定义控制台应用程序的入口点。
//
#include <iostream>
using namespace std;
//命名空间

float add(int num1,float num2)
{
	float result;
	result = num1 + num2;
    return result;
}
int main()
{
    /**************  函数  **************/
    int a = 100;
    float b = 50.89;
    int k;
    k = add(a,b);
    cout << k << typeid(k).name() << endl;

    return 0;
}

输出

150float

总结,调用函数赋予的数据类型 > 构造函数时赋予的类型 > 函数返回值赋予的类型
函数只能返回一次返回值,如果一个return被执行的后面还有代码的话,就不执行。
一般的情况下,调用函数赋予的数据类型、构造函数时赋予的类型、函数返回值赋予的类型 这三种类型都要保持一致。

猜你喜欢

转载自blog.csdn.net/qq_41616600/article/details/99986814