qaz2428119
发表于 2021-8-4 17:40:52
kyozy 发表于 2021-7-23 16:55
子类化可以通过窗口句柄传递, 你再说说还有哪些不能传递参数
我不是要传递参数
是要一个实例类一个自定义的回调函数
kyozy
发表于 2021-8-15 10:50:17
qaz2428119 发表于 2021-8-4 17:40
我不是要传递参数
是要一个实例类一个自定义的回调函数
传递了 this 参数, 就不就可以在类成员函数回调了
qaz2428119
发表于 2021-8-15 15:20:51
kyozy 发表于 2021-8-15 10:50
传递了 this 参数, 就不就可以在类成员函数回调了
问题是 取到的方法地址,不会自动添加上 this 参数,必须有用户自己主动添加这个 this 指针
kyozy
发表于 2021-8-17 14:27:32
本帖最后由 kyozy 于 2021-8-17 14:36 编辑
qaz2428119 发表于 2021-8-15 15:20
问题是 取到的方法地址,不会自动添加上 this 参数,必须有用户自己主动添加这个 this 指针 ...
这有什么问题,要么这些你自己处理, 不是用户处理.要么如果你需要用户自己提供非静态成员函数, 那估计你只能写成事件, 就好像火山自己的窗口事件那些一样.用户就只需要选择事件, 代码都不用写了.
qaz2428119
发表于 2021-8-20 12:52:29
kyozy 发表于 2021-8-17 14:27
这有什么问题,要么这些你自己处理, 不是用户处理.要么如果你需要用户自己提供非静态成员函数, 那估计你 ...
就比如 HOOK 系统函数 ,你给我写个 回调试试,我怀疑你根本就没理解
kyozy
发表于 2021-9-1 00:06:37
HOOK的话必须是非成员函数, 因为要求参数一样, 而成员函数有一个隐藏的this参数, 也就是多一个参数.
qaz2428119
发表于 2021-9-4 19:45:53
kyozy 发表于 2021-9-1 00:06
HOOK的话必须是非成员函数, 因为要求参数一样, 而成员函数有一个隐藏的this参数, 也就是多一个参数. ...
如果是使用非成员函数,就没有办法一个类实例对应一个回调,就只能共用回调,这样就导致只能是全局函数
wangvoldp
发表于 2023-2-19 20:33:52
kyozy 发表于 2021-7-23 16:55
子类化可以通过窗口句柄传递, 你再说说还有哪些不能传递参数
SetTimer 就没法传递
kyozy
发表于 2023-2-28 14:18:08
没传this参数的, 就没办法作为成员函数, 就算火山帮你实现, 也是传参数,只不过传的地方可能是其他地方, 比如寄存器, 反正都要找个地方传this
qaz2428119
发表于 2023-2-28 21:58:26
kyozy 发表于 2023-2-28 14:18
没传this参数的, 就没办法作为成员函数, 就算火山帮你实现, 也是传参数,只不过传的地方可能是其他地方, 比 ...
就是这个问题,希望汇编高手帮忙实现这个功能