游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4043|回复: 15

关于函数指针

[复制链接]

8

主题

130

帖子

156

积分

注册会员

Rank: 2

积分
156
发表于 2006-10-13 11:57:00 | 显示全部楼层 |阅读模式
我想请问各位对函数指针怎么看,其实一半算看法和意见调查(^_^)。你们觉得函数指针是否方便,是否容易理解?——就函数指责作为回调而言。
另外,是希望细化流程由你控制,还是你被控制。如MFC的消息响应就是你被控制,win32编程就是你控制,前者消息流程内置,后者自己建立消息循环。当然,细化流程如果有需要,有人给予说明和帮助,而且编码量不会有质的改变,一般来说可能会多2、3行。
我个人不太习惯函数指针(被迫使用时没办法了),比较倾向于自己控制。你的看法呢?
希望各位路过的朋友不要吝啬回复。谢谢!

0

主题

202

帖子

202

积分

中级会员

Rank: 3Rank: 3

积分
202
发表于 2006-10-14 01:43:00 | 显示全部楼层

Re:关于函数指针

你还差火候

0

主题

6

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2006-10-14 16:33:00 | 显示全部楼层

Re:关于函数指针

人家说用好了指针才掌握了要领。。

32

主题

1259

帖子

1351

积分

金牌会员

Rank: 6Rank: 6

积分
1351
发表于 2006-10-14 17:40:00 | 显示全部楼层

Re:关于函数指针

什么事件注册,都靠函数指针了,不然你怎么搞。

8

主题

130

帖子

156

积分

注册会员

Rank: 2

积分
156
 楼主| 发表于 2006-11-16 10:29:00 | 显示全部楼层

Re:关于函数指针

我都忘了我发过这个贴了。
不过,我们可以这么看问题:你可以具几个例子,你认为必需用函数指针的,我不用函数指针给你办到。如果这样(假设成立,先去掉你认为的不可能做到),你选择用指针还是不用呢?

不过,倒是我发现很多人喜欢函数指针,我发现了很多人都喜欢,比如我的同事们。—— 不过,我怀疑和他们的C背景有关,另外就是对OO的理解有关(本来想说对OO的理解不深刻,怕得罪太多人了^_^) —— 当然,不管我这个认识是否正确,我想这也属于一个用户面和用户习惯问题。


to mykaizw:在C/C++指针是需要的,我基本没用办法不用。函数指针是一类比较特殊的指针,而且语法比较晦涩(我这么认为,比如 :typedef void *fun_t( void ) )

to Devil:不一定要用事件注册,你可以用接口回调;另外你还可以换一种设计思路(这个我就不具体说了,因为我的方法和通常的方式有比较大的差别,很难短叙述说清,而且还有半保密的必要啊^_^。解决同一个问题,往往可以有很多选择,关键在你的取舍。一般不会只有一种做法的,大多可能是没有想到。个人建议一般多想想几套方案,比较才能选优)。

36

主题

1047

帖子

1147

积分

金牌会员

Rank: 6Rank: 6

积分
1147
发表于 2006-11-16 10:54:00 | 显示全部楼层

Re:关于函数指针

想用就用,这和对 OO 理解深刻与否没有关系,如果真的较起真来,c++也不是个纯 OO 语言。

106

主题

743

帖子

745

积分

高级会员

Rank: 4

积分
745
QQ
发表于 2006-11-16 15:51:00 | 显示全部楼层

Re:关于函数指针

请问什么是函数指针?有什么应用?

8

主题

130

帖子

156

积分

注册会员

Rank: 2

积分
156
 楼主| 发表于 2006-11-16 18:22:00 | 显示全部楼层

Re:关于函数指针

to congy : c++纯不纯oo没有关系了(是否纯OO本身也没什么特别意义,好像smalltalk就是纯oo的,主要是看它解决问题,当然,我也是想强调OO对项目和解决问题是有帮助的)。我只是想调查一下,如果给出选择,可以用,也可以不用函数指针的情况下,大多数人会怎么选择。

to hwbnet : 函数指针从名字看就知道是指向函数的指针了,这个指针存储了函数的地址,用于通过地址调用函数。常见的应用主要是回调,比如CreateThread的系统API就要求你传你要启动的线程的函数地址给它的函数指针;还有很多服务器程序员喜欢用函数回调的方式处理网络协议(命令)。

106

主题

743

帖子

745

积分

高级会员

Rank: 4

积分
745
QQ
发表于 2006-11-16 18:25:00 | 显示全部楼层

Re:关于函数指针

通过地址调用函数和直接调用函数有什么区别?

15

主题

129

帖子

129

积分

注册会员

Rank: 2

积分
129
QQ
发表于 2006-11-16 23:06:00 | 显示全部楼层

Re: Re:关于函数指针

hwbnet: Re:关于函数指针

通过地址调用函数和直接调用函数有什么区别?


我以前也觉得那还不是一样,后来感觉就是“方便”。我自己写过的一个程序里面为了控制大量的自发事件的时候使用,在需要的时候把函数指针,需要的变量,对象全部传递到一个封装好的类,剩下的就不管了。现在回头想想,和mem_fun()的原理差不多,就是可惜没用模板,写的真是王妈妈的裹脚又臭又长
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-25 22:14

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表