LinuxC++函数基本概念(概览)-创新互联

个人博客首页(点击查看详情) -- https://blog.51cto.com/11495268
    

创新互联服务项目包括陕州网站建设、陕州网站制作、陕州网页制作以及陕州网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,陕州网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到陕州省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

1、简介

    C++语言 中任何事情都需要用到函数,本文 介绍 函数相关的基本概念,了解 这有样的 存在即可 -- 函数定义、函数调用、函数重载、函数模板(至于 C++中 特有的 类函数 本文暂不介绍)
    

2、函数定义

// 定义函数时 函数名后面 括号中 参数 为 形参
返回值类型 函数名([形参])
{
    函数体
}

    

3、函数调用

// 函数 调用时 函数名后面 括号中 参数 为 实参
#include 
using namespace std;

void exchange_num(int *first_num, int *sec_num)
{
    int exchange_tmp = 0;
    exchange_tmp = *first_num;
    *first_num = *sec_num;
    *sec_num = exchange_tmp;
}

int main(void)
{
    int first_num = 1;
    int sec_num= 10;

    // 调用函数
    exchange_num(&first_num, &sec_num);

    cout << "first_num:" << first_num << endl;
    cout << "sec_num:" << sec_num << endl; 

    return 0;
}

    

4、函数重载

    C++ 允许同一个 函数名 定义 多个 函数,重载函数 必须 参数个数 或者 参数类型 不同
    

// 函数 调用时 函数名后面 括号中 参数 为 实参
#include 
using namespace std;

void exchange_num(int *first_num, int *sec_num)
{
    int exchange_tmp = 0;
    exchange_tmp = *first_num;
    *first_num = *sec_num;
    *sec_num = exchange_tmp;
}

void exchange_num(double *first_num, double *sec_num)
{
    double exchange_tmp = 0;
    exchange_tmp = *first_num;
    *first_num = *sec_num;
    *sec_num = exchange_tmp;
}

int main(void)
{
    int ifirst_num = 1;
    int isec_num= 10;

    double dfirst_num = 1.1;
    double dsec_num = 10.01;

    // 调用函数
    exchange_num(&ifirst_num, &isec_num);
    exchange_num(&dfirst_num, &dsec_num);

    cout << "ifirst_num:" << ifirst_num << endl;
    cout << "isec_num:" << isec_num << endl; 

    cout << "dfirst_num:" << dfirst_num << "\ndsec_num:" << dsec_num << endl; 

    return 0;
}

    

5、函数模板

    函数重载 时 可以发现,有些 重载函数 只是参数类型不同罢了,在 C++语言中,数据类型 较多,如此 岂不是 每个类型 都需要 写个 重载函数(理论上 这是 可行的),但是 造成大量的 重复代码,函数模板 正是 解决 这个问题;建议 通用函数,在函数调用时,系统会根据 实参的类型 来取代 模板中的 虚拟类型,从而实现 不同函数的功能

// 函数 调用时 函数名后面 括号中 参数 为 实参
// 模板 函数调用 不支持 隐式类型转换
#include 
using namespace std;

// class 关键字也可以用 typename 关键字替换
template 
void exchange_num(c2 *first_num, c2 *sec_num)
{
    c2 exchange_tmp = 0;
    exchange_tmp = *first_num;
    *first_num = *sec_num;
    *sec_num = exchange_tmp;
}
int main(void)
{
    int ifirst_num = 1;
    int isec_num= 10;

    double dfirst_num = 1.1;
    double dsec_num = 10.01;

    // 调用函数
    exchange_num(&ifirst_num, &isec_num);
    exchange_num(&dfirst_num, &dsec_num);

    cout << "ifirst_num:" << ifirst_num << endl;
    cout << "isec_num:" << isec_num << endl; 

    cout << "dfirst_num:" << dfirst_num << "\ndsec_num:" << dsec_num << endl; 

    return 0;
}

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


名称栏目:LinuxC++函数基本概念(概览)-创新互联
当前路径:http://scjbc.cn/article/ceechh.html

其他资讯