Swift的String.Index
在文档中定义为
字符或代码单元在字符串中的位置。
endIndex
是
字符串的“过去”位置-即,该位置较大 而不是最后一个有效的下标参数。
和startIndex
是
第一个字符在非空字符串中的位置。
在C语言字符的上下文中考虑Swift字符是否正确?
我对Clang的理解是,字符串中字符的索引返回该字符的存储空间,而该字符串以空字符结尾。
因此,对于Swift来说,endIndex
是空字符,我们之所以使用String.Index
而不是使用带Int的下标String(例如JavaScript中的string[0]
之类)是因为我们正在处理角色的存储空间。
如果这是正确的想法,是因为Swift在Objective-C运行时之上运行?