Ios 面试问题快速,难以理解的语法
在WWW上,我找到了一个采访问题,其中一个问题是: 下面代码段的输出是什么:Ios 面试问题快速,难以理解的语法,ios,swift,syntax,question-answering,Ios,Swift,Syntax,Question Answering,在WWW上,我找到了一个采访问题,其中一个问题是: 下面代码段的输出是什么: class Kondana<T:Equatable> { var dictDataHolder = [String:T]() func add(value:T?,using key:String) -> T? { self.dictDataHolder[key] = value return value } } var fortOne = K
class Kondana<T:Equatable> {
var dictDataHolder = [String:T]()
func add(value:T?,using key:String) -> T? {
self.dictDataHolder[key] = value
return value
}
}
var fortOne = Kondana<String>()
let value = fortOne.
print(value)
我在Xcode中运行此代码,输出为:
__lldb_expr_21.Kondana<Swift.String>
\uuuu lldb\uexpr\u21.Kondana
请帮助我一步一步地了解正在发生的事情。
我对正在发生的事情有想法,但不确定。
什么是Kondana类?为什么使用上述语法?我知道这是泛型的,但不理解输出?发布代码后,正确答案是“编译时错误”。正如其他人所说,这条线
let value = fortOne.
是被截断的,因此是不合法的。您发布的代码不完整-这一行被缩短了。您能提供更多关于面试的信息,这可能会澄清这里的人可以做什么吗?当您运行它时,您将“let value=fortOne”改为“let value=fortOne”这就印出了fortOne的一个表示形式——实际上,它应该在最后给出一个语法错误。性格
let value = fortOne.