社区
C++ 语言
帖子详情
!!!请问如何把类的成员函数的指针赋给函数指针
dancingelephant
2003-09-12 05:20:29
请问如何把类的成员函数的指针赋给函数指针?
...全文
67
13
打赏
收藏
!!!请问如何把类的成员函数的指针赋给函数指针
请问如何把类的成员函数的指针赋给函数指针?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
smilewang
2003-09-18
打赏
举报
回复
成员函数指针在使用时要和具体的对象进行绑定的.例子如下
myclass myObject,*pObject;
pObject=&myObject;
(myObject.*pFunc)();
(pObject->*pFunc)();
dancingelephant
2003-09-16
打赏
举报
回复
HaiFen(小石头) 讲的没错,可以正常使用
不过smilewang(急速传说)所讲的
class myclass{
int func(){return 0;}
};
=========================
int (myclass::*pFuc)()=0;
pFunc=&myclass::func;
编译可以通过,但是再怎么通过这个函数指针调用这个函数呢
我在后面加int i=pFunc();
在BCB6下面会有"Call of nonfunction"的错误
是我调用的不对还是什么问题?
mechgoukiteng
2003-09-15
打赏
举报
回复
一般情况下
一般的函数指针只有4byte
而成员函数指针往往会有20bytes
kenryHuang
2003-09-15
打赏
举报
回复
可以assign的吧,不过调用的时候注意,多传一个Object* 进去了
Yssss1980
2003-09-15
打赏
举报
回复
主要是要类型匹配
static的mf可以和赋给一般的函数指针
TianGuangZao
2003-09-15
打赏
举报
回复
静态成员函数不带隐含式参数“this”。因此,可以将其参数中的地址当作是普通函数的指针来使用。
如果要从静态成员函数中访问对象的数据成员,显式传入对象的地址即可。例如:
class Car
{
private:
int x;
public:
int get_x();
static void func(Car * pthis); // 静态成员函数
void func2(); // 非静态成员函数
};
void Car::func(Car * pthis)
{
int y = pthis->get_x(); // 访问对象的成员函数
}
Nemo1314
2003-09-15
打赏
举报
回复
同意smilewang(急速传说);
当最好这样说明:
class myclass{
int func(){return 0;}
};
=========================
typedef int (myclass::*pFuc)();
pFunc pm=0
pm=&myclass::func
HaiFen
2003-09-14
打赏
举报
回复
如果是类的静态成员函数可以直接赋值;一般成员函数必须使用成员函数指针,如smilewang(急速传说) 所讲
class A
{
public:
static int fun();
};
int (*pFun)() = &A::fun;
nmgpy
2003-09-14
打赏
举报
回复
想想也是不可以的,成员函数里面难免要用到成员变量。赋值个一个函数指针,和类没有任何关系成员变量的值谁赋呀。
smilewang
2003-09-14
打赏
举报
回复
普通的函数指针是不可以的.
但成员函数指针可以.
class myclass{
int func(){return 0;}
};
=========================
int (myclass::*pFuc)()=0;
pFunc=&myclass::func;
这里pFunc就是一个成员函数指针.
sevecol
2003-09-14
打赏
举报
回复
不行的.
jp311
2003-09-14
打赏
举报
回复
不行
成员函数的原型始终都有一个this参数
成员函数的指针和函数指针的类型不匹配
dancingelephant
2003-09-14
打赏
举报
回复
自己顶啊
《C经典面试》编译链接、
指针
、内存bug、函数、其它
课程内容:1.编译链接:编译链接过程、预编译、存储
类
、生命周期、作用域、链接域等2.
指针
:
指针
概念、数组相关的
指针
、字符串
指针
、
函数
指针
等3.内存bug:内存越位、内存覆盖、使用非法内存、内存泄露等。4.函数:自定义函数、内联函数、回调函数、变参函数、递归函数、库函数等5.其它:自动
类
型转换、数据溢出、结构体对齐、volatile、typedef、assert宏、逗号表达式、++/--等
类
成员函数
指针
目录
类
成员函数
指针
普通
成员函数
虚
成员函数
静态
成员函数
类
成员函数
指针
普通
成员函数
类
被需要的时候会被载入内存,当然
类
成员函数
也会被载入内存,所以
类
的
成员函数
是有真正的内存地址的,这个地址一般跟具体的
类
对象没有什么关系
类
成员函数
指针
,通俗的讲,是一个
指针
,指向
类
成员函数
使用方法如下 示例 #include <iostream> #include <string.h> using namespace std; class CT { public: void func(int
C++
类
成员函数
指针
使用介绍
前言 在之前写过的博客中有介绍过
函数
指针
和
指针
函数的区别和简单用法(文章在这里),当时的Demo非常简单,都是C语言的写法,但是当在C++中直接像C那样使用
类
成员函数
指针
时就会报错:reference to non-static member function must be called 所以如果是C++中的
成员函数
指针
其使用方法是有区别的,这里针对不同的场景做个补充说明。
类
成员函数
的
指针
(非...
【C/C++】
类
成员函数
指针
定义 使用方法
类
成员函数
编译器会默认加上一个隐藏的参数:this
指针
所以定义
类
成员函数
的
指针
与普通的
函数
指针
肯定会有所区别: C++ 提供了三种运算符 ::* .* ->.用于定义和使用
类
成员函数
指针
定义
类
成员函数
指针
时,注意&和
类
名作用域不能省略 使用
指针
间接调用函数优的点: 调用便于分层设计、利于系统抽象、降低耦合度 使接口与实现分开 提高代码的复用性、扩展性。
类
成员函数
指针
是指指向
类
中
成员函数
的
指针
调用函数的两种方式: 通过函数名直接调用 通过
函数
指针
间接调用 通过
函数
指针
调用的好处:真正的函数
详解
函数
指针
和
类
成员函数
指针
作者:倾夜·陨灭星尘 一.什么是
函数
指针
?
函数
指针
,顾名思义即指向函数的
指针
。 如果要问,为什么能用一个
指针
指向一个函数呢?我觉得要理解这个问题,以及要理解后面的
函数
指针
和
类
成员函数
指针
,没有什么比从计算机原理的角度来理解更容易了。这里就简要回顾一下相关知识。 众所周知,计算机(图灵机)执行程序的基本流程就是:取指令->执行指令->取下一条指令->……。取指令的位置由一个寄存器PC决定。
C++ 语言
64,646
社区成员
250,476
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章