函数指针--成员函数(静态,非静态)&普通函数

原创 2016年08月29日 11:31:52
#include<iostream>
using namespace std;

class A
{
public:
    //静态成员函数
    static void function(int i)
    {cout<<++i<<endl;}
    //非静态成员函数
    void fun(int i)
    {cout<<--i<<endl;}
};
//普通函数
void Fun(int i)
{
    cout<<i<<endl;
}

//非静态成员函数
typedef void (A::*FuncPointer)(int i);  
//静态成员函数
typedef void (*FuncP)(int i);

int main()
    {
     FuncP f = A::function;
     FuncPointer ff= &A::fun;
     FuncP fff= Fun;
     A a;
     //静态成员函数指针
     f(7);
     //非静态成员函数指针
     (a.*ff)(7);
     //普通函数指针
     fff(7);
   return 0;
}
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

类的非静态成员函数指针详解

From:http://blog.csdn.net/hairetz/archive/2009/05/06/4153252.aspx 个人感觉对于类的成员函数指针这块讲解的比较深入详细 推荐阅读 ///...

非静态成员函数与this指针

this指针的本质This指针本质是一个函数参数,只是编译器隐藏起形式的,语法层面上的参数。this指针只能在非静态成员函数中使用,全局函数、静态函数都不能使用this指针。实际上,非静态成员函数默认...

如何输出类的非静态成员函数地址

源地址 http://blog.sina.com.cn/s/blog_6f6c0f350100w3zf.html 首先我们定义一个类Ctest,类里面包含三个不同形式的成员函数,静态...

非静态成员函数后面的const作用

看下面的代码和gcc给出的报错信息有助于理解非静态成员函数后面的const意思了。 非静态成员函数后面的const作用其实就是限定了函数内部不可改变数据成员的值。 #include usin...

如何输出类的非静态成员函数地址

标签:c 类成员函数 地址 输出     首先我们定义一个类Ctest,类里面包含三个不同形式的成员函数,静态成员函数statFunc()、动态成员函数dynFunc()和虚拟函数virtFunc()...

c++ 成员函数指针

C++ 实现把非静态成员函数作为回调函数(非static)

众所周知,C++的类成员函数不能像普通函数那样用于回调,因为每个成员函数都需要有一个对象实例去调用它。         通常情况下,要实现成员函数作为回调函数,一种常用的方法就是把该成员函数设计为静...

用类的非静态成员函数作为线程入口函数的方法--转

一个类里的函数,通常要作为线程的入口函数,必须把它指定为static类型。 static类型的类成员函数,并不具有this指针,也不能访问到protected或private类型的类成员。 因为以...

C++ 类非静态成员函数作为线程入口函数实现

///////////////////////////////////////////////////// //代码 #include #include #include #include ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)