函数重载与函数指针(这一块很重要,后续要继续学习):

当使用重载函数名对函数指针赋值时

根据重载规则挑选与函数指针参数列表一致的候选者

严格匹配候选者的函数类型与函数指针的函数类型

#include<iostream>usingnamespacestd;voidmyFunc(inta){printf("a:%d\n",a);}voidmyFunc(char*p){printf("p:%s\n",p);}voidmyFunc(inta,intb){printf("a:%d\n",a);}//函数指针基础的语法//1声明一个函数类型//voidmyFunc(inta,intb)typedefvoid(myTypeFunc)(inta,intb);//myTypeFunc*myfuncp=NULL;//定义一个函数指针,这个指针指向函数的入口地址//2声明一个函数指针类型typedefvoid(*myPTypeFunc)(inta,intb);//声明了一个指针函数类型//myPTypeFuncfp=NULL;//通过函数指针类型定义了一个函数指针//3定义一个函数指针变量void(myVarPFunc)(inta,intb);intmain(intargc,char*argv[]){myPTypeFuncfp=NULL;fp=myFunc();fp(1,2);cout<<"HelloWorld!"<<endl;return0;}




注意区分 函数重载 重写 重定义