delegates相关内容

C# - ThreadPool QueueUserWorkItem 使用?

现在我正在使用以下代码添加排队线程.我不喜欢它.我的同事也不会,因为他们不太了解 C#.当然,我想要的只是将要在新线程中执行的方法排队. private static void doStuff(字符串参数){//做事}//调用 (a)ThreadPool.QueueUserWorkItem(a => doStuff("hello world"));//调用 (b)ThreadPool.Queue ..
发布时间:2022-01-18 12:35:52 C#/.NET

List<object>.RemoveAll - 如何创建适当的谓词

这是一个菜鸟问题 - 我对 C# 和泛型还很陌生,对谓词、委托和 lambda 表达式完全陌生... 我有一个“查询"类,其中包含另一个名为“车辆"的类的通用列表.我正在构建代码以从父查询中添加/编辑/删除车辆.目前,我正在专门研究删除. 从我目前阅读的内容来看,我似乎可以使用 Vehicles.RemoveAll() 来删除具有特定 VehicleID 的项目或具有特定 Enquir ..
发布时间:2022-01-18 12:35:45 C#/.NET

我可以按类型获取 C# 委托的签名吗?

如果您有委托的类型信息,是否有一种直接的方法使用反射来获取委托的参数列表? 例如,如果我声明一个委托类型如下 delegate double FooDelegate(字符串参数,布尔条件); 稍后获取该委托类型的类型信息,如下所示 类型 delegateType = typeof(FooDelegate); 是否可以从该类型信息对象中检索返回类型 (double) 和参数列表 ({s ..
发布时间:2022-01-18 12:35:31 C#/.NET

NSURLSession 委托与 completionHandler

我一直使用完成处理程序.使用 NSURLConnection,现在使用 NSURLSession.这导致我的代码非常不整洁,尤其是我在请求中的请求中请求. 我想尝试在 NSURLSession 中使用委托来实现我用 NSURLConnection 做的一些杂乱无章的事情. 于是我创建了一个NSURLSession,并创建了一个dataTask: NSURLSessionDataTas ..
发布时间:2022-01-18 12:35:17 移动开发

从 MethodInfo 构建一个委托?

谷歌搜索并登陆 SO 并阅读 this other question 是否可以从 MethodInfo 构建正确的委托如果您在编译时不知道参数的数量或类型? 关于此的更多信息:是否可以在不使用 Reflection.Emit 或类型生成器的情况下优雅地完成此操作? 这对我来说有点麻烦,因为 Delegate.CreateDelegate 要求我将正确的 Delegate 类型指定 ..
发布时间:2022-01-18 12:35:09 C#/.NET

如何在我的 List<T> 中形成一个好的谓词委托来 Find() 某些东西?

在查看 MSDN 之后,我仍然不清楚我应该如何使用 T 的成员变量(其中 T 是一个类)在 List 中使用 Find() 方法来形成一个正确的谓词 例如: 公共类汽车{公共字符串制作;公共字符串模型;public int 年份;}{//在我的代码中的某个地方列出carList = 新列表();//... 添加汽车的代码 ...汽车 myCar = new Car();// ..
发布时间:2022-01-18 12:34:52 C#/.NET

C# 中的标准委托

在 C# 中预定义了一些委托 我知道这些: EventHandler//默认事件回调事件处理器//带有自定义参数的默认事件回调(继承自 EventArgs)Action//无返回值无参数的函数动作//没有返回值和1-4个参数的函数函数//具有 0-4 个参数和一种结果类型的方法谓词//相当于 Func; 对于 ..
发布时间:2022-01-18 12:34:46 C#/.NET

Func<string,string> 有什么区别?和委托?

我看到代表有两种形式: A.函数转换方法 = λB. public delegate string convertMethod(string value); 我不确定这两者之间的实际区别是什么.他们都是代表吗?我相信第一个会使用 lambda,而第二个必须有一种方法来实际执行工作.我可能也很困惑. 解决方案 首先,您的两个示例正在做两件完全不同的事情.第一个是声明一个通用委托变量并为其 ..
发布时间:2022-01-18 12:34:35 C#/.NET

在 Typescript 中声明一个委托类型

来自 C# 背景,我想创建一个定义函数签名的数据类型.在 C# 中,这是一个 delegate 声明如下: delegate void Greeter (string message);公共课 Foo{public void SayHi (Greeter g) {g("嗨!");}} 现在,我想在 Typescript 中实现类似的功能.我知道 Typescript 没有委托类型,但只有 la ..
发布时间:2022-01-18 12:34:29 C#/.NET

为什么试图理解代表感觉就像试图理解宇宙的本质?

我读过两本书,有很多例子.他们对我来说仍然几乎没有意义.我可能会编写一些使用委托的代码,但我不知道为什么.我是唯一有这个问题的人,还是我只是个白痴?如果有人能真正向我解释我何时、何地以及为什么我会实际使用代理,我会永远爱你. 解决方案 委托只是在变量中传递函数的一种方式. 您传递一个委托函数来执行回调.比如在做异步 IO 的时候,你传递一个委托函数(一个你用委托参数写的函数),当数据 ..
发布时间:2022-01-18 12:34:22 C#/.NET

C# 中的匿名委托

我不会是唯一一个厌倦了为需要委托的单次调用定义和命名委托的人.例如,我想以可能来自其他线程的表单调用 .Refresh(),所以我编写了以下代码: private void RefreshForm(){if (InvokeRequired)调用(新调用委托(刷新));别的刷新();} 我什至不确定我是否必须这样做,我只是读了足够多的书,害怕它在以后的某个阶段不起作用. InvokeDeleg ..
发布时间:2022-01-18 12:34:17 C#/.NET

为什么我们需要 C# 委托

我似乎一直不明白为什么我们需要代表?我知道它们是持有方法引用的不可变引用类型,但为什么我们不能直接调用该方法,而不是通过委托调用它? 谢谢 解决方案 当然你可以直接在对象上调用方法,但是考虑以下场景: 您希望使用单个委托来调用一系列方法,而无需编写大量方法调用. 您想优雅地实现基于事件的系统. 您想调用两个签名相同但位于不同类中的方法. 您想将方法作为参数传递. 您不想 ..
发布时间:2022-01-18 12:34:00 C#/.NET

您如何使用 Func<>和行动<>在设计应用程序时?

我能找到的关于 Func 和 Action 的所有示例都是简单,如下所示,您可以在下面的示例中看到它们在技术上是如何工作的,但我想在示例中使用它们来解决以前无法解决或只能以更复杂的方式解决的问题,即我知道它们是如何工作的,并且我可以看到它们简洁而强大,所以我想从更广泛的意义上了解它们解决了哪些类型的问题,以及我如何在应用程序设计中使用它们. 您以何种方式(模式)使用 Func 和 A ..
发布时间:2022-01-18 12:33:53 C#/.NET

将变量从主表单传递到输入表单

我有一个简单的问题.我有一个主表单,然后是一个启动表单,我可以从中选择一个新的 3D 模型来生成.从启动表单中选择新的 3D 模型时,我想首先检查我之前处理的模型是否已保存.我只是想使用委托将一个布尔值从主窗体传递给启动窗体,但我似乎无法访问主窗体或其任何变量.我认为这很简单:frmMain myForm = new frmMain();,但是在智能感知中输入 frmMa ..
发布时间:2022-01-18 12:33:36 其他开发

在 ObjectiveC 上的代表之间传回信息

我需要在 CameraSessionView 之间传回 NSMutableArray 照片;如何将相机拍摄的照片存储在 NSMutableArray 上,以及 TableViewController 如何将这些照片上传到 DropBox.我正在使用委托和协议,但我尝试的所有方式......都失败了.任何人都可以帮助我.我认为我做错了一些小事.我给你看一些代码: CameraSessionVi ..
发布时间:2022-01-18 12:33:29 移动开发

自定义 uitextfield 的保留周期(强参考)修复?

我有一个自定义文本字段类“loginTextFields".我最近注意到我使用这些文本字段的视图控制器没有被释放,我怀疑它与这些文本字段有关......非常感谢任何指导:) 我已经查了很多stackoverflow 帖子,但没有一个真正帮助我. txt字段类: class LoginTextFields: UITextField, UITextFieldDelegate {覆盖初始化(帧: ..
发布时间:2022-01-18 12:33:14 移动开发

传递给委托时将整数作为引用类型处理

本周我参加了在荷兰举行的 TechDays 2013,我收到了一个有趣的测验问题.问题是:以下程序的输出是什么.这是代码的样子. 类程序{委托无效作家();静态无效主要(字符串 [] 参数){var writers = new List();for (int i = 0; i 显然,我给出的答案是错误的.我争论结束,因为 int 是一个值类型,传递到 Console.Writ ..
发布时间:2022-01-18 12:33:05 C#/.NET