首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

无法分配self.delegate它会产生无法识别的选择器

问题描述:无法分配self.delegate它会产生无法识别的选择器。

回答:

这个问题通常出现在iOS开发中,涉及到委托模式(Delegate Pattern)。当我们尝试将一个对象的委托(delegate)属性分配给另一个对象时,如果委托对象无法识别(unrecognized)所要执行的选择器(selector),就会出现这个错误。

委托模式是一种常见的设计模式,用于实现对象之间的通信和交互。在iOS开发中,委托模式常用于视图控制器(ViewController)与其他对象之间的通信,例如将表格视图(UITableView)的委托设置为视图控制器。

出现无法分配self.delegate的错误可能有以下几个原因:

  1. 委托对象未正确实现所需的协议(Protocol):在委托模式中,委托对象需要遵循(conform)特定的协议,该协议定义了委托对象需要实现的方法。如果委托对象未正确实现所需的协议方法,就会导致无法识别的选择器错误。解决方法是确保委托对象正确实现了所需的协议方法。
  2. 委托对象被提前释放(Deallocation):如果委托对象在被使用之前被释放了,那么在尝试分配委托属性时就会出现无法识别的选择器错误。解决方法是确保委托对象在使用期间保持有效,可以使用强引用(strong reference)或其他方式来保持对象的生命周期。
  3. 委托属性未正确声明或分配:在使用委托模式时,需要正确声明委托属性,并在适当的时候将其分配给委托对象。如果委托属性未正确声明或未正确分配委托对象,就会导致无法分配委托属性的错误。解决方法是确保委托属性正确声明,并在适当的时候将其分配给委托对象。

总结:

无法分配self.delegate并产生无法识别的选择器错误通常是由于委托对象未正确实现协议、委托对象被提前释放或委托属性未正确声明或分配所导致的。解决方法是确保委托对象正确实现协议方法、保持委托对象的有效性以及正确声明和分配委托属性。

腾讯云相关产品和产品介绍链接地址:

腾讯云提供了丰富的云计算产品和服务,包括云服务器、云数据库、云存储等。您可以访问腾讯云官网了解更多详情:https://cloud.tencent.com/

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

关于OC代理的问题:self.delegate = self

背景 最近作者在进行工程代码分析时,经常看到这样的代码: self.delegate = self //自己的代理设置为自己 于是心中产生了不少疑问,为什么会这样写?这样写是否是正确的?...(如:UITextField等)的情况下,因为我们无法获知内部消息是如何传递的,只能通过代理对象获知消息。...难道是 self.delegate = self 导致的?...,找到了程序的崩溃点后,通过 NSLog 输出上述方法中的选择器 selector,发现是 -keyboardInputChangedSelection: 方法,于是设置条件断点,如图所示: ?...:obj]; }} 此时,细心的读者可能会产生一个疑惑,如果如上所述,那么上文提到新建的工程(SGLimitedTextField 类,如果写了 self.delegate = self)也应该会出现无限递归

1.5K20

转的两种读音区分_category怎么读

利用Objective-C的动态运行时分配机制,可以为现有的类添加新方法,这种为现有的类添加新方法的方式称为类别catagory,他可以为任何类添加新的方法,包括那些没有源代码的类。...(2)可以执行希望向其添加类别的类以及类别的名称,还可以列出添加的方法 不可以添加新的实例变量,类别生命中没有实例变量部分。...有两方面局限性: (1)无法向类中添加新的实例变量,类别没有位置容纳实例变量。...类别方法将完全取代初始方法从而无法再使用初始方法。...无法添加实例变量的局限可以使用字典对象解决 4、类别的作用 类别主要有3个作用: (1)将类的实现分散到多个不同文件或多个不同框架中。

54740
  • 基于信息理论的机器学习-中科院自动化所胡包钢研究员教程分享04(附pdf下载)

    我们讨论了独立参数定理在拒识分类中的意义。指明应用代价矩阵可能会产生若干问题。 问题1:对代价矩阵设定会出现不一致性的解释。我们给出两种设定,分别是误差类别代价相同,与拒识类别代价相同。...然而,当分类扩展到包括拒识类别,如何给定或分配拒识代价值基本上无规律可寻。 客观性在机器学习中是一个挑战。我们认为各种自由参数(如代价)是由数据决定的方符合客观性。任何人为设定方式都是主观的。 ?...它会为主观分类中提供一种客观结果的参照。代价敏感学习与代价缺失学习的关联关系如图。 ? 事实上代价缺失学习方法已经存在。...但是它们均无法在拒识分类学习中胜任。而互信息分类器在拒识分类学习中表现了独特的优势。该方法能够根据数据的分布自动平衡误差类别与拒识类别。...由此产生了第69至71页中新的贝叶斯二值拒识分类计算公式。

    1.8K70

    施展世界:GPT时代需要的教育,是学会如何提出好问题

    GPT可以替代工作但无法替代人 B站的小伙伴们大家好,我是施展,首先我认为GPT它根本不会替代人,但是它会替代很多工作,这要注意了,替代人跟替代工作,这是两回事,替代人是说人本身就没用了。...它可以给你回答的特别的好,GPT跟你之间会有各种各样的,这种往复的这种交谈的过程,这样一个过程看上去,似乎对方真的就是一个有思维的人,但严格说来,GPT并不是对他所说那些东西有了理解。...就是我在B站的前面,也曾经有一期,我聊过那种通识教育,通识教育,古典教育它都有这样的一个取向,就是任何一个单一学科,它实际上都是一种工具性的存在,如果一个人他完全沉浸在一个单一学科里面。...实际上那种人是会被GPT所淘汰的,因此GPT的出现,它会改变很多领域,在我看来尤其很重要的一点就是,它会改变教育领域,未来我们需要一种全新的教育,它会是对于古典教育的某种回归。...它会有一个通识教育的外观特征,但是这必须得是一种,能够适应GPT时代的通识教育。

    19940

    【云原生 | Kubernetes篇】Kubernetes 网络策略(NetworkPolicy)(十四)

    Pod 之间互通,是通过如下三个标识符的组合来辩识的: 其他被允许的 Pods(例外:Pod 无法阻塞对自身的访问) 被允许的名称空间 IP 组块(例外:与 Pod 运行所在的节点的通信总是被允许的...如果一个 NetworkPolicy 的标签选择器选中了某个 Pod,则该 Pod 将变成隔离的(isolated),并将拒绝任何不被 NetworkPolicy 许可的网络连接。...需要 apiVersion、kind、metadata 字段 spec:NetworkPolicy的spec字段包含了定义网络策略的主要信息: podSelector: 同名称空间中,符合此标签选择器...,匹配标签为 project=myproject podSelector 标签选择器,匹配标签为 role=frontend egress:egress是一个数组,代表出方向的白名单规则。...这里应该指定的是集群外部的 IP,因为集群内部 Pod 的 IP 地址是临时分配的,且不可预测。 集群的入方向和出方向网络机制通常需要重写网络报文的 source 或者 destination IP。

    82651

    「形色」专访:爆款识花软件的炼成之路

    有人提出这样一种看法,「形色识别的准确度比较高是因为前期训练数据比较多,而微软识花识别率太低是因为训练数据少,但他们的算法相对来说比较优秀。」...,数量的上限大约在 500 种,超过这个数量级,系统的工作量和数据库的承载能力都无法实现。...「最初版本的人工智能,其实是『人工+智能』,当时为了避免因为数据不足而产生的识别错误,我们还在后台配备了人工解答问题。」...形色表示,在某种程度上,计算机可以看到很多人眼无法辨识的特征。...现在,形色 App 已经入驻上百万植物专家和植物爱好者,当系统碰到实在无法鉴别的植物,用户可以直接上传到鉴定区,植物专家和爱好者会在几分钟内给出他们的答案。

    2.3K40

    AAAI 2018 | 如何高效进行大规模分类?港中文联合商汤提出新方法

    在这项研究中,我们观察到了两个重要结果:(1)在大多数情况下,一个类别的样本只会和少量其它类别产生混淆;(2)当使用了 softmax 损失时,对于每个样本而言,从这个小的类别子集反向传播回来的信号会主导其学习过程...我们的基本思想是开发一种可以识别少量活跃类别的方法,这些类别可以为每个样本 mini-batch 产生显著的信号。这种方法需要即准确又有效。...首先,我们得到一个最优类别选择器(optimal class selector)。...然后在第二个阶段,我们基于动态类别层次开发出了这种最优选择器的一种有效近似。...(4)KMeans:另一种用于寻找活跃类别的简单方法。它会根据对应的权重向量将所有类别聚类成 1024 组。对于来自类别 c 的样本,会选择包含 c 的组。

    1.4K80

    请避免犯这9个常见的 CSS “坏习惯”

    important 声明应用于元素样式,那么该样式将覆盖该属性类别的所有其他样式。以下是语法: selector { property: value !...例如,您设置了一些颜色值,最终发现对于视力受损的人来说很具挑战性,无法产生共鸣。您可以使用 !important 来覆盖默认的颜色值。 如果你遇到了CSS样式调整无法有效解决的布局问题,你可以使用 !...虽然存在这种样式系统,但重要的是要理解它的使用不支持应用程序构建的最佳实践,因为它会创建不可重用的代码。只有在测试或美化简单的HTML文件时才使用内联样式。...Explorer. */ -ms-border-radius: 10px; /* standard version */ border-radius: 8px; 声明字体回退:在为“font-family”等属性分配值时...9、其他忽视的额外错误 使用0px替代0:毫无疑问,这可能不会对样式表产生影响,但为了最佳实践,请确保使用0而不是0px。

    30610

    详解中国香港中文大学超大规模分类加速算法 | 论文

    (2)当使用Softmax作为损失函数时,从这一小部分类别产生的梯度主导了所有的梯度。(3)随着训练的进行,容易混淆的类别的集合会越来越小。...该框架引入了一个选择器,该选择器通过结合当前特征和分类的权重矩阵,能够高效且准确地挑选出分类上能够产生较强监督信号的“活跃类别”。...这两种选择器都无法满足我们的设计要求,因此,我们希望找到一种在速度和精度上都可以取得较好平衡的“活跃类别”选择器。...思考与最后的话 回顾本文的算法,我们针对大规模分类时Softmax带来的问题,提出了基于动态类别层级选择的算法,高效且准确地找到了“活跃类别”,并且我们进一步提出了动态分配的方案来进一步充分利用计算资源...当这些噪声达到无法人工清理的规模时,可能会对构建的动态的层级结构造成很多干扰,使得选择器无法准确区分“活跃类别”和“噪声类别”等信息,如何在这种情况下改进我们的选择性Softmax是一个值得继续探究的问题

    1K100

    基于信息理论的机器学习-中科院自动化所胡包钢研究员教程分享03(附pdf下载)

    ▌概述 ---- 本次tutorial的目的是,1.介绍信息学习理论与模式识别的基本概念与原理;2.揭示最新的理论研究进展;3.从机器学习与人工智能的研究中启发思索。...思考为什么M2与M3无法区分,列为同序B?“元准则”可以理解为是期待底层准则要尽量可以包容的特征。Meta3是对Meta2的进一步期待要求。 ?...对于互信息类指标,混淆矩阵中每个元素都应该对互信息值产生贡献。但是 Case 4 中混淆矩阵中若该四个元素有如此特定关系时,它们的互信息值贡献将为零。 由此产生互信息类指标的局部性极值。...当p1识的“信息代价”低于大类一个误差的的“信息代价” 当p1>pc时,小类一个拒识的“信息代价”高于大类一个误差的的“信息代价” 另两个曲线产生的排序不发生变化 ?...本章在拒识决策中从“误差类别”与“拒识类别”同时考察的角度展开研究。这也是来源于应用中的问题。由于常规分类评价指标已经无法适用于拒识结果评价,我们对24个信息论指标进行系统性考察。

    1.2K70

    kubernetes Pod资源调度之亲和性调度

    这些规则基于节点上的自定义标签和Pod对象上指定的标签选择器进行定义 。 节点亲和性允许Pod对象定义针对一组可以调度于其上的节点的亲和性或反亲和性,不过,它无法具体到某个特定的节点 。...resources: requests: cpu: 6 memory: 20Gi 在预选策略PodFitsResources根据节点资源可用性进行节点预选的过程中,它会获取给定节点的可分配资源量...在第二阶段的优选过程中,除了NodeAffinityPriority优选函数之外,还有其他几个优选函数参与优先级评估,尤其是SelectorSpreadPriority,它会将同一个ReplicaSet...基于单一节点的Pod亲和性只在极个别的情况下才有可能会用到,较为常用的通常是基于同一地区 region、区域zone或机架rack的拓扑位置约束。...不过,反亲和性调度一般用于分散同一类应用的Pod对象等,也包括将不同安全级别的Pod对象调度至不同的区域、机架或节点等。

    2.2K21

    “人工智能”的边际

    那么除了这些条件以外,还有别的吗?有啊,电力!也就是能量,没有电,一切人工智能都会虾米。如何有电呢,用煤炭、天然气、石油、水里、风力、太阳光、等等用来发电才能有电。...这些条件都是人工智能产生并应用的主要的基本条件,而且任何一个条件都不能缺!其它的条件暂时先忽略不考虑,如存放计算机系统的机房空间、组织管理……全部都归物质法(色法)所涵盖。...但是无论人工智能或则未来可能出现的机器智能如何发展,也仅仅是在众生包含第六识意识在内的前六识(眼、耳、鼻、舌、身、意)的功能和性能在工具方向的外在延伸,是工具和方法,属于“用”或“术”的范围,根本无法代替人类的前六识本身...原因是直觉是人类的第七识所直接负责,而第七识只有佛法的修行人才可以如实全面的现观其功能体性,属于“心法”,而出生人工智能的人类第六识意识必须有第七识才能出生,这就是人工智能无法有真正直觉的原因。...无论未来人工智能如何发展,都无法实现第七识意根和第八识如来藏,也无法代替前六识,也就是人工智能不仅毫无超越人类本身的可能性,而且从本质上说连动物的智能都无法超越,无论任何低级动物。

    2.5K90

    北海 - Rust与面向对象(四)

    (/\D/.test(this)); }; 这个能力其实很好用,但是C++无法这样,一直觉得std::string的功能不足,想为其添加更丰富的如trim/split之类的语义,只能采用继承或者组合代理方式...注意,Rust的原型法并没有产生任何新类型,只是增加了一个新的trait函数表,所以一开始称之为“原地”扩展,是比JS更干净的原型法,个人非常喜欢用这个模式,能用就用!...sth about params self.do_sth_about_params(params...); // 这是真正要装饰的实现 // 2. then turn self.delegate...上面的静多态实现也是不行的,不同的装饰器组合,就会产生不同的类型,类型可能随着Handler类型数目增加呈其全排列阶乘级类型爆炸,忍不了,必须得换用指针。...即便是同一个设计模式,因为乱七八糟的类型、胡乱命名、粗糙的掺杂不少杂质的实现,为不停变化的需求弄的面目全非者,让人读起来,实在很难对的上有某种设计,这并非设计模式的锅,而是编程素质不专业、太自由发挥、总见多识少地自创概念

    20810

    Kubernetes(k8s)-服务(Service)介绍

    这个IP地址是集群内部的,外部网络无法访问它。 NodePort:这种类型的Service在ClusterIP的基础上,为Service在每个节点的IP上提供一个静态端口(NodePort)。...NodePort通常在30000-32767之间的范围内分配。 LoadBalancer:这种Service类型在NodePort的基础上,还会请求云提供商的负载均衡器。...Service通过选择器(Selector)与Pods建立连接,选择器定义了Service要管理的Pods的标签。...当一个Service被定义后,它会自动创建一个端点(Endpoints)对象来表示后端的Pods IP地址。...但是如果我们没有相匹配的标签的pod,则这个时候svc是无法被访问的,因为它没有对应的后端。 我们通过这个网络插件的iptables实现可以看到没有连接直接被REJECT(拒绝)。

    19710

    【重识云原生】第六章容器6.4.4节——ReplicaSet组件

    实现上kubernetes官方推荐不要直接使用ReplicaSet,用Deployments取而代之,Deployments是比ReplicaSet更高级的概念,它会管理ReplicaSet并提供很多其它有用的特性...创建Pod时,它会认为所有Pod 是一样的,是无状态的,所以在创建顺序上不会有先后之分。...ReplicaSet的副本数量、标签选择器甚至是Pod模板都可以随时按需进行修改,不过仅改动期望的副本数量会对现存的Pod副本产生直接影响。...另外,在创建完成后,ReplicaSet也不会再关注Pod对象中的实际内容,因此Pod模板的改动也只会对后来新建的Pod副本产生影响。         ...2.3.3 从ReplicaSet隔离pod         更改pod标签,使其无法与ReplicaSet标签选择器匹配就可以将pod从ReplicaSet隔离出来,这时pod副本个数变少,ReplicaSet

    84510

    kubernetes调度策略

    随机调度随机调度是最简单的调度策略之一,它会随机将 Pod 调度到可用的节点上。...这种策略适用于不需要特定资源的应用,但它并不适用于需要特定资源的应用,因为无法保证 Pod 能够在具有足够资源的节点上运行。负载均衡调度负载均衡调度是一种将 Pod 均衡分配到节点上的调度策略。...Kubernetes 会根据节点的资源使用率和负载情况,将 Pod 分配到负载较低的节点上。这种策略适用于需要高可用性和负载均衡的应用。...Kubernetes 通过标签和选择器来识别节点,从而将 Pod 调度到带有指定标签的节点上。反亲和性调度与亲和性调度相反,它会将 Pod 调度到没有特定标签的节点上。...节点反亲和性调度与节点亲和性调度相反,它会将 Pod 调度到没有特定标签的节点上。自定义调度器除了上述调度策略之外,Kubernetes 还提供了自定义调度器的功能。

    66540

    实践-小细节Ⅳ

    解决方法 如图所示,我们忽略了在Find 下面还有一个 Replace,但是需要指出的是 必须要先使用 Find 搜索出所有内容,再点击 Replace 才行,否则 Replace All按钮是灰色的,无法点击的...示例: // 判断代理对象是否实现这个方法,没有实现会导致崩溃 if ([self.delegate respondsToSelector:@selector(userLoginWithUsername...null value for Objective-C classes NSNull [NSNull null] 代表一个对象,这个对象的值是空 nil、Nil、NULL在使用上是没有什么区别的...在另外,给一个赋值为nil的对象发送消息,不会产生异常。当然给一个赋值为Nil、NULL的对象发送消息也不会产生异常,这个在例子中已经证实。...故根据此条结论的总结为:nil、Nil、NULL目的都是给一个指针赋值为空,给空指针发送消息不会产生异常。

    80910

    微信AI从识物到通用图像搜索的探索揭秘

    作者:lincolnlin,腾讯 WXG 专家研究员 微信识物是一款主打物品识别的 AI 产品,通过相机拍摄物品,更高效、更智能地获取信息。...电商场景:我们要识别的集合是无限大的,而且还是动态的。所以我们是通过动态图像召回。从召回的结果上推断出商品的具体款式。 动植物汽车这种场景:集合是相对固定的。而且需要一些专业的数据库。...前面提到服务端的检测是带有类别的,比如图中输出鞋子,那么我们就走鞋子的专用检索模型提取特征,再到鞋子库中检索。这是最朴素的版本。...检索篇 | 通用以图搜图之无监督的分库 上面提到的是识物的检索方案实现,回到通用的以图搜图场景,我们无法简单的把图片定义成 N 个库出来,所以我们用了无监督的分库方法。...再通过聚类的方法产生伪标签,如下面的 16 个标签。可以看出,相同 topic 的图片,会被尽量分到同一个库中。

    3.5K30

    七张图了解Kubernetes内部的架构

    工作节点 工作节点监听API Server发送过来的新的工作分配;他们会执行分配给他们的工作,然后将结果报告给Kubernetes主节点。 ? Kubelet kubelet在群集中的每个节点上运行。...在Pod意外无法执行任务的情况下,Kubernetes不会尝试修复它们。相反,它会在其位置创建并启动一个新Pod。这个新Pod是原来的副本,除了DNS和IP地址都和以前的Pod一样。...此功能对开发人员设计应用程序的方式产生了深远的影响。 由于Kubernetes架构的灵活性,不再需要将应用程序绑定到Pod的特定实例。...Service是怎么工作的 Pod通过称为标签(Label)和选择器(Selector)的键值对与Service相关联。Service会自动发现带有与选择器匹配的标签的新Pod。...然后,它会调度一个新副本来代替发生故障的Pod,并将其分配给集群中的另一个节点。 通过添加或删除容器来更新或缩放应用程序时,同样适用。

    1.5K10
    领券