为了账号安全,请及时绑定邮箱和手机立即绑定

一个事件只能关联一个委托吗?为什么呢?

一个事件只能关联一个委托吗?为什么呢?

C#
qq_遁去的一_1 2022-06-10 16:07:03
关于c#事件与委托的问题。一个事件只能关联一个委托吗?比如Public delegate void call();public event call note; note只和call关联吗?也就是说,note 中添加的事件只能是无参无返回值的函数吗?…那岂不是不灵活了很多?
查看完整描述

2 回答

?
杨魅力

TA贡献1811条经验 获得超6个赞

委托像是一种声明,类似C的 typedef void myfunc();

事件是匹配一种委托的。像是myfunc *func;


#include <stdio.h>typedef void myfunc();void Something(){    printf("something1\n");}void Something2(){    printf("something2\n");}int main(){    myfunc *f=Something;    myfunc *f2=Something2;    f();    f2();    return 0;}

一个委托表示一种函数类型。可以匹配多个函数。不一定是没返回值的。事件是匹配委托的,委托有返回值事件也可以有。


        public delegate int test();        public event test eventtest;


查看完整回答
反对 回复 2022-06-14
?
侃侃尔雅

TA贡献1801条经验 获得超16个赞

你委托声明就是void的, 对应的时间处理就必须是void, 你如果需要返回参数或者传入参数, 修改一下委托定义就行了

查看完整回答
反对 回复 2022-06-14
  • 2 回答
  • 0 关注
  • 103 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信