草庐IT

subscript

全部标签

ios - 错误 : Cannot subscript a value of type 'inout [Agenda]' (aka 'inout Array<Agenda>' )

我正在制作一个应用程序,当您按下一个表示紧急的按钮时,会有一个标签显示“紧急”。就在我实现与按钮的用户交互之前,我有一个数组(如下所示),其中一些对象具有urgent=true,但有些对象具有urgent=false,所以我可以从我的代码开始。MainTableViewController.swift中的数组:varcontent:[Agenda]=[Agenda(subject:"Readthisarticle",deadline:"1-2days",urgent:false),Agenda(subject:"Respondtothisemail",deadline:"ASAP",u

ios - Rx swift : How to use shareReplay to lazily get subscription

所以我希望能够懒惰地订阅共享数据,而不会在没有人订阅时持续存在。然后如果有人再次订阅,将创建一个新的可观察对象。我会使用一个变量,但如果没有人订阅,我不希望它持续存在(因为如果我使用数组或大于int的东西,我不想将它们保留在内存中)。我当前的实现有效,除非重新订阅它仍然获得最后一个值,这意味着该值仍然存在。我正在考虑将observable设置为nil,但我不知道该在哪里做。谁能帮我完成这个?下面的代码显示它大部分工作正常,但看起来数据在没有人订阅的情况下仍然存在。varswitchTwoDisposable:Disposable?=nil​@IBActionfuncswitchOneC

swift - 我如何创建一个带有返回可选的getter但返回非可选的setter的下标

我正在编写一个名为TriangularArray的自定义集合.它代表这样的结构:xxxxxxxxxxxxxxx其中每个x是数组中的一个元素。我可以访问具有行号和索引号的元素,它们都是从零开始的。例如,访问以下(4,2):abcdefghijklmno将导致m(第5行,该行中的第三个值)。我用了[[T]]作为支持数组,我写了一个这样的下标:subscript(_row:Int,_index:Int)->T?{get{//innerArrayisthe[[T]]usedforbackingifrow=innerArray.count{returnnil}ifindexrow{returnn

class - 在子类中覆盖返回协变类型的下标

我有一个类叫做LLLinkedList,它定义了一个subscript:classLLLinkedList{//otherproperties,functionsandinitializers...subscript(range:Range)->LLLinkedList{get{//returnsomething}set{//setsomething}}}现在subscript显然需要Range并返回LLLinkedList.我还定义了LLLinkedList的子类称为LLArray:classLLArray:LLLinkedList{//otherproperties,functio

swift - 'PFObject 没有名为 'subscript' 的成员

我似乎无法找到解决此问题的方法,在整个互联网上进行了搜索。有人可以向我解释如何解决这个问题吗?:)funcrefresh(){varquery:PFQuery=PFQuery(className:"Message")query.findObjectsInBackgroundWithBlock{(objects:[AnyObject]?,error:NSError?)->Voidinself.messagesArray=[String]()ifletobjs=objects{formessageObjectinobjs{letmessageText:String?=(messageObj

swift - Swift Dictionary 下标如何消除 Int 键和索引的歧义?

目前我正在研究一种数据结构,旨在唯一地存储存储键值对并按键对它们进行排序。本质上它是一个排序的字典,因此我正在寻求尽可能多地保留Swift的Collection和Dictionary语义。在文档和Swift源代码中(尽我所能找到的),字典有两个下标。一个是最常用的subscriptbykey(Githubsource):extensionDictionary{...publicsubscript(key:Key)->Value?{@inline(__always)get{return_variantBuffer.maybeGet(key)}set(newValue){ifletx=ne

json - 元组类型 '(key: String, value: AnyObject)' 的值没有成员 'subscript'

我收到这样的错误:元组类型“(键:字符串,值:AnyObject)”的值没有成员“下标”我尝试在线搜索,但我不明白,它总是说要将其更改为字典数组,但是当我将数据解析为[[String:AnyObject]]时,它给了我一个错误。ErrorScreenshot这是我的上下文代码`////MapViewViewController.swift//OntheMap!////CreatedbyBelalElsiesyon11/13/17.//Copyright©2017ElsiesyIndustries.Allrightsreserved.//importUIKitimportMapKitcl

swift - 如何定义自定义下标数组运算符,必​​要时使数组元素为 "spring into existence"

是否可以将运算符func添加到Swift类下标方法varx=["dkfkd","dkff"]x[2]??="mmmm"//equaltox[2]=x[2]??"mmmm" 最佳答案 这与下标运算符无关,更多的是如何定义??=运算符的问题。您可以这样做,但它可能不会像您期望的那样工作。这是一个可能的实现://firstdefinethe??=operatorinfixoperator??={}//thensomeprettystandardlogicforanassignment//versionof??func??=(inoutlh

swift - swift 中的下标和协议(protocol)

我正在定义一个协议(protocol),出于抽象目的,它有一个带有getter和setter的“下标”函数。然后我定义了一个实现该协议(protocol)的类。问题的简短版本:如果我在类的对象上使用下标(作为左值,因此使用setter),一切都按预期工作。如果我对刚刚声明的协议(protocol)类型的对象执行此操作,我会收到“无法分配给该表达式的结果”错误。长版。我有一个国际委员会。板是一个二维矩阵。我通过BoardType协议(protocol)公开Board类型。protocolBoardType{varwidth:Int{get}varheight:Int{get}subscr

swift - 为什么我的 Swift 协议(protocol)扩展不能包装相同类型的现有函数?

我正在尝试为一个集合创建一个“安全”的下标运算符——一个忽略超出集合可用索引范围的部分的运算符。期望的行为是在所有情况下都返回一个Slice;当下标范围与集合范围不重叠时,应返回空数组。这似乎是对thisanswer中介绍的技术的直接扩展.documentationofthecollectionsubscriptoperatorisverystraightforward:subscript(bounds:Range)->Slice{get}但是当我在我的包装函数中采用这些相同的类型时,我得到以下信息:复制/粘贴版本:extensionCollectionwhereIndices.Ite