【发布时间】:2015-05-08 03:18:17
【问题描述】:
我有一个结构,我想添加一个新的初始化器。初始化器在直接添加到 stuct 时可以正常工作,如下所示:
public struct IndexedKeyword: Printable
{
public var keyword: String // will include # or @ or http:// prefix
public var range: Range<String.Index> // index into the Tweet's text property only
public var nsrange: NSRange = NSRange() // index into an NS[Attributed]String made from the Tweet's text
init(keyword: String) {
self.keyword = keyword
range = Range<String.Index>(start: keyword.startIndex, end: keyword.endIndex)
nsrange = NSRangeFromString(keyword)
}
// other initializers follow this
// ...
当我尝试通过扩展名在另一个文件中添加初始化程序时,像这样,
extension Tweet.IndexedKeyword {
init(keyword: String) {
self.keyword = keyword
range = Range<String.Index>(start: keyword.startIndex, end: keyword.endIndex)
nsrange = NSRangeFromString(keyword)
}
}
我收到上述错误。
我是否遗漏了什么,或者这只是某种编译器错误?
【问题讨论】:
标签: swift