【发布时间】:2015-08-25 14:44:27
【问题描述】:
在 Objective-C 中,您可以通过执行以下操作来打印调用堆栈:
NSLog(@"%@", [NSThread callStackSymbols]);
在不使用 Foundation 类的情况下如何在 Swift 中做到这一点?
【问题讨论】:
-
操场上的自动补全给了我:
NSLog(NSThread.callStackSymbols())。 -
抱歉,我应该澄清一下——不使用 Foundation 类。
-
通过使用基础类。这不是邪恶的。 Cocoa/Cocoa touch 的大部分功能都是围绕 Foundation 类构建的。需要时使用它们。
-
@DuncanC 同意,但想知道一种严格的 Swift 代码的方法。
-
如果不使用 Foundation 类,我就无法做到这一点。如果不使用基础类,我无法编写 iOS 或 Mac OS GUI 应用程序。您可以使用纯 Swift 代码调用 Foundation Class 方法,但您仍然需要使用 Foundation Classes。