首页 > 代码库 > 函数重载(续)==》函数重载和函数指针在一起

函数重载(续)==》函数重载和函数指针在一起

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

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

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

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

#include <iostream>

using namespace std;

void myFunc(int a)
{
    printf("a:%d\n",a);
}

void myFunc(char *p)
{
    printf("p:%s\n",p);
}

void myFunc(int a,int b)
{
    printf("a:%d\n",a);
}

//函数指针 基础的语法

//1 声明一个函数类型
//void myFunc(int a,int b)
typedef void (myTypeFunc)(int a,int b);
//myTypeFunc *myfuncp = NULL;//定义一个函数指针,这个指针指向函数的入口地址

//2 声明一个函数指针类型
typedef void (*myPTypeFunc)(int a,int b);//声明了一个指针函数类型
//myPTypeFunc fp = NULL;   //通过函数指针类型 定义了一个函数指针


//3 定义一个函数指针 变量
void (myVarPFunc)(int a,int b);

int main(int argc, char *argv[])
{
    myPTypeFunc fp = NULL;
    fp = myFunc();
    fp(1,2);
    cout << "Hello World!" << endl;
    return 0;
}




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

本文出自 “11907685” 博客,请务必保留此出处http://11917685.blog.51cto.com/11907685/1893303

函数重载(续)==》函数重载和函数指针在一起