Swift'的名称空间是什么;s类型(的:)函数?

Swift'的名称空间是什么;s类型(的:)函数?,swift,namespaces,Swift,Namespaces,我的Swift课程如下: class Foo: CustomDebugStringConvertible { let type: Int = 0 var debugDescription: String { return "<\(type(of:self)) type: \(type)>" } } 我想这是因为我的本地类型与Swift的全局类型冲突。什么是Swift全局名称空间以便我消除歧义?Swift是Swift全局名称空间名称,因此我的类应该是: class

我的Swift课程如下:

class Foo: CustomDebugStringConvertible {
  let type: Int = 0
  var debugDescription: String {
    return "<\(type(of:self)) type: \(type)>"
  }
}

我想这是因为我的本地
类型
与Swift的全局
类型
冲突。什么是Swift全局名称空间以便我消除歧义?

Swift
是Swift全局名称空间名称,因此我的类应该是:

class Foo: CustomDebugStringConvertible {
  let type: Int = 0
  var debugDescription: String {
    return "<\(Swift.type(of:self)) type: \(type)>"
  }
}
class Foo:CustomDebugStringConvertible{
let类型:Int=0
var debugDescription:字符串{
返回“”
}
}

相关:.Swift不是Objective-C,除非你有很好的理由,否则不要继承自
NSObject
,也不要标记你的类
@objc
。即使你在真实的课堂上有这样做的理由,这些也绝对不是MCVE所需要的。我不确定为什么这个问题会被否决。我似乎很清楚。另外,@DavidPasztor OP并没有问关于ObjC的问题。他问的是
类型(of:)
函数。@daltonclaybrook我知道这一点,但如果问题中发布的代码中有错误,那么每个人都应该指出,即使特定问题与所讨论的问题无关……我将这完全视为swift问题。也许我会得到一些选票。
class Foo: CustomDebugStringConvertible {
  let type: Int = 0
  var debugDescription: String {
    return "<\(Swift.type(of:self)) type: \(type)>"
  }
}