C/C++常见函数指针的用法

发布时间 2023-11-28 17:27:47作者: TechNomad

一、简单函数指针的用法

#include <iostream>

int (*pFun)(int, int);

int Add(int a, int b) {
    return (a + b);
}

int main() {
    pFun = Add;
    std::cout << (*pFun)(2, 2) << std::endl;

    return 0;
}

输出结果:  

二、使用typedef定义函数指针(typedef的功能是定义新的类型)

#include <iostream>

typedef int (*pTRFUN)(int, int);

int Add(int a, int b) {
    return (a + b);
}

int main() {
    pTRFUN pFun = Add;

    std::cout << (*pFun)(3, 5) << std::endl;

    return 0;

}

输出结果:  

三、在C++中使用函数指针

#include <iostream>

typedef int (*PTRUN)(int, int);

class MyTest {
public:
    MyTest() {};
    ~MyTest() {};

public:
    static int Add(int a, int b);
};

int MyTest::Add(int a, int b) {
    return (a + b);
}

int main() {
    PTRUN pFun = MyTest::Add;
    std::cout << (*pFun)(3, 2) << std::endl;
    return 0;
}

输出结果: