delegates相关内容

Dropbox SDK - linkFromController:委托还是回调?

我正在使用他们网站上提供的 SDK 将 Dropbox 添加到我的应用程序中.一旦 [[DBSession sharedSession] linkFromController:self]; 与帐户链接,是否有任何方法可以调用某些方法? 基本上我想在应用尝试登录 Dropbox 后调用 [self.tableView reloadData].它甚至不需要区分登录是否成功. 解决方案 D ..
发布时间:2022-01-18 12:46:17 移动开发

使用具有返回值的多个函数调用委托

我正在尝试理解代表的概念并且有一个疑问.假设我们定义了一个委托,其返回类型为 int,并接受 2 个 int 类型的参数. 委托声明: 公共委托 int BinaryOp(int x, int y); 现在,假设我们有 2 个方法(加法和乘法),它们都接受 2 个 int 参数并返回一个 int 结果. 代码: static int Add(int x, int y){返回 ..
发布时间:2022-01-18 12:46:10 C#/.NET

+ 运算符如何用于组合委托?

例如: delegate void SomeDelegate();SomeDelegate a = new SomeDelegate( () => Console.WriteLine("A") );SomeDelegate b = new SomeDelegate( () => Console.WriteLine("B") );SomeDelegate c = a + b; 在最后一行,a + ..
发布时间:2022-01-18 12:46:01 C#/.NET

UIImagePickerController 委托警告

我刚刚在我的项目中添加了一个照片选择器,一切正常.唯一的事情是它坚持在我设置委托的地方给我以下警告 - 分配给 'id'从不兼容的类型'AddTargetViewController *' 我已经以正常方式在 AddTargetViewController.h 中设置了委托 - @interface AddTargetViewController : UIViewController ..
发布时间:2022-01-18 12:45:46 其他开发

Lambda\匿名函数作为参数

我是 C# 的新手.只是玩弄它.不是为了真正的目的. void makeOutput(int _param){Console.WriteLine(_param.ToString());}//...//代码中的某处{makeOutput(/* 一些不是 c# 代码的示例,我想要什么 */function : int () { return 0; } );} 是否可以使用真正的匿名函数(意味着返回 ..
发布时间:2022-01-18 12:45:39 C#/.NET

挂钩 CLLocationManagerDelegate 协议

我从 3 天开始就有问题 :( 我想在 CLLocationManagerDelegate 协议中挂钩这个方法: - (void)locationManager:(CLLocationManager *)managerdidUpdateLocations:(NSArray *) 位置 我尝试了一切,但没有成功.我知道如何挂钩类或框架,但我找不到挂钩代表的解决方案.请帮我!谢谢 解决方案 ..
发布时间:2022-01-18 12:45:14 其他开发

如何发出委托或 lambda 表达式

我想发出一个返回 Func 的方法.在这个方法中,我必须创建一个委托或 lambda 表达式,它正好为返回类型提供服务. 它应该看起来像这样: //我有一个解析方法,将在我缺失的方法中调用//这是它的签名:对象解析(参数对象[] args);//这就是我使用它的方式:var barFactory = (Func)MissingMethod(typeof(IBar));var bar = b ..
发布时间:2022-01-18 12:44:58 C#/.NET

使用委托从 C# 调用 IronRuby

是否可以使用委托作为参数从 C# 调用 IronRuby 方法,以使 yield 可以工作? 以下给了我一个错误数量的参数(1 代表 0) 异常. 动作动作=控制台.WriteLine;var runtime = Ruby.CreateRuntime();var engine = runtime.GetEngine("rb");引擎.执行(@“类 YieldTest定义测试yield '来 ..
发布时间:2022-01-18 12:44:41 C#/.NET

委托用法:业务应用程序

背景 鉴于“大多数"开发人员都是业务应用程序开发人员,我们最喜欢的编程语言的功能在我们正在使用它们的上下文中使用. 作为 C#/ASP.NET 应用程序开发人员,我倾向于只在处理 UI 事件时使用委托.事实上(这是我缺乏经验的一部分),我什至不知道除了在事件中使用委托的好上下文!这很可怕;但我发现还有其他开发人员在同一条船上. 注意:答案应与 .NET 2.0 相关..NET 3 ..
发布时间:2022-01-18 12:44:26 C#/.NET

关于foreach和delegate的问题

假设如下代码: foreach(Ite​​mCollection 上的项目 i){东西 s = 新的东西();s.EventX += 委托 { ProcessItem(i);};SomethingCollection.Add(s);} 当然,这是错误的,因为所有的代表都指向同一个 Item.替代方案是: foreach(Ite​​mCollection 上的项目 i){项目 tmpItem ..
发布时间:2022-01-18 12:44:18 C#/.NET

在快速的代表数组中查找代表

我想在删除之前检查我的 removeDelegate 方法中是否已经有一个委托.我怎么做? 这是我目前所得到的: 协议 LocationManagerDelegate {函数 locationManagerDidUpdateLocation(oldLocation:CLLocationCoordinate2D,当前位置:CLLocationCoordinate2D)}类位置管理器:NSOb ..
发布时间:2022-01-18 12:44:09 移动开发

运算符 '=>' 是什么意思在 C# 中是什么意思?

此语句中的“=>"表示什么? del = new SomeDelegate(() => SomeAction()); 上面的声明和这个一样吗? del = new SomeDelegate(this.SomeAction); 谢谢. 解决方案 基本上它是指定一个匿名函数,它不接受调用 SomeAction 的参数.所以是的,它们在功能上是等效的.虽不相等.使用 lambda 更等同 ..
发布时间:2022-01-18 12:44:01 C#/.NET

为什么委托在静态方法中使用时不能引用非静态方法?

为什么在 C# 中使用委托时需要将函数设为 STATIC? 类程序{委托 int Fun (int a, int b);静态无效主要(字符串 [] 参数){乐趣 F1 = 新乐趣(添加);诠释水= F1(2,3);Console.WriteLine(Res);}**静态公共 int Add(int a, int b)**{整数结果;结果 = a + b;返回结果;}} 解决方案 这不是“必要 ..
发布时间:2022-01-18 12:43:54 C#/.NET

c# 中代表不可变的目的是什么?

我正在读一本C# 2012 中的C# 结合代表点,没有注意到这一点?代表的目的是不可变的. 合并代表到目前为止你见过的所有代表都只有调用列表中的单个方法.代表可以“组合"通过使用加法运算符.操作的结果是创建一个新的委托,其调用列表是两个操作数的调用列表副本的串联代表.例如,以下代码创建三个委托.第三个委托是由前两个委托创建的. MyDel delA = myInstObj.MyM1;MyD ..
发布时间:2022-01-18 12:43:47 C#/.NET

在 .NET/C# 中使用委托加速反射 API

这个帖子有评论如果你需要打电话该方法多次,使用反射一次找到它,然后将其分配给委托,然后调用委托.. 这个 delegate 如何以及为什么工作得更快?谁能举个例子? 我可以称之为 caching 吗?如果是这样,除了这个带委托的缓存方法之外,还有其他方法吗? 添加 我想出了一个使用 delegate 这里. 解决方案 A delegate 只是一个指向函数的指针.如果您 ..
发布时间:2022-01-18 12:43:39 C#/.NET

反射 - 将委托添加到另一个委托的调用列表

我正在尝试将委托附加到不同委托的调用列表.通过这种方式,我正在实现一种对现有事件的钩子.我需要连接在每个被调用的事件之后运行的东西. 只要类型暴露的委托和我传入的动作具有完全相同的签名,以下示例有效.(On1 和 OnAll 事件都使用 Action 委托声明,因此可以正常工作). 代码:我如何将 Action 与事件修饰符公开的现有委托挂钩. 公共静态类 ReflectionExt ..
发布时间:2022-01-18 12:43:29 C#/.NET

委托协方差混淆难题!

为什么这不起作用?我没有正确理解委托协方差吗? 公共委托 void MyDelegate(object obj)公共课 MyClass{公共 MyClass(){//错误:带有“void MyDelegate(object)"签名的预期方法_delegate = 我的方法;}私人 MyDelegate _delegate;公共无效我的方法(SomeObject obj){}} 解决方案 正确 ..
发布时间:2022-01-18 12:43:20 C#/.NET