我的观点是扩展Swift.print()
函数或编写我自己的自定义函数ns_print()
,它可以从所有模块中获得而无需显式导入。
因为我saw some answers喜欢
public func print(_ items: Any..., separator: String = " ", terminator: String = "\n") {
let output = items.map { "\($0)" }.joined(separator: separator)
Swift.print(output, terminator: terminator)
}
但它只能在定义的模块内部工作。我想在所有现有模块中共享此功能。
可能吗?有帮助吗?
不,这是不可能的,如果你想使用不同模块的功能,你必须导入该模块。
默认的print
函数是Swift
模块的一部分,它在所有Swift文件中自动(隐式)导入,这就是它可以在任何地方使用而无需显式导入模块的原因。