C++复习第四天 函数重载

来源:互联网 发布:win7下nginx配置php 编辑:程序博客网 时间:2024/05/24 23:14
/*************************函数重载*********************/#include<iostream>#include<stdio.h>//参数的个数,参数的类型不同,顺序不同,返回值无关//extern "C"{}   //按照c标准编译而不是按照C++标准编译void go(int a){std::cout << a;}void go(double a){std::cout << a;}void go(double a,int b ){std::cout << a << b;}void go(int  a, double b){std::cout << a << b;}void main1(){void(*pgo1)(int a)=go;void(*pgo2)(double a)=go;void(*pgo3)(double a, int b)=go;void(*pgo4)(int  a, double b)=go;printf("%p\n",pgo1);printf("%p\n", pgo2);printf("%p\n", pgo3);printf("%p\n", pgo4);getchar();}/*************************默认参数*********************/#include<stdio.h>#include<stdlib.h>#include<iostream>//默认参数必须放在右边//默认参数中间不允许出现不默认的void print(int c,int a = 1, int d=2, int b = 3){std::cout << a<<b<<c << std::endl;}void print(double c){}void main(){//print(1,2,3);//函数指针没有默认参数,必须全部输入数据//void(*pt1)(int c, int a = 10, int d , int b ) = print;出错//函数重载与函数默认参数冲突,需要你输入的参数类型不一个,个数不一样,顺序不一样不会出现问题,否则一定报错void(*pt1)(int c, int a , int d , int b ) = print;pt1(100,1,2,3);//函数指针调用,没有用默认的参数print(100);system("pause");}

原创粉丝点击