草庐IT

lldb_private

全部标签

objective-c - 当你在 lldb 中打印一个 Swift 对象 (po) 时会发生什么?

在Objective-C中,当您NSLog对象或在lldb中po时,该对象接收描述消息。然而,在Swift中,行为似乎有所不同。我实现了Printable(需要description属性)和DebugPrintable(这又需要一个名为debugDescription的属性)。如果我尝试println()一个对象或po它,这些属性都不会被调用。这是怎么回事?那么这些协议(protocol)是干什么用的?? 最佳答案 有一个已知问题,即Printable会被SwiftREPL忽略(即Playground中的任何内容或由xcrunswi

ios - 为什么 private(set) 在 Swift 中不起作用?

来自Apple文档:“Eachaccess-levelmodifieraboveoptionallyacceptsasingleargument,whichconsistsofthekeywordsetenclosedinparentheses(forinstance,private(set)).Usethisformofanaccess-levelmodifierwhenyouwanttospecifyanaccesslevelforthesetterofavariableorsubscriptthat’slessthanorequaltotheaccesslevelofthevar

swift:如何将父类(super class)中的公共(public)方法覆盖为子类中的私有(private)方法

我有一个super类(class)classFather{publicfuncdoSomething(){}}我希望这个子类是classChild:Father{privateoverridefuncdoSomething(){}}但是Xcode是这么说的Overridinginstancemethodmustbeasaccessibleasthedeclarationitoverrides那么,如何将父类(superclass)中的公共(public)方法覆盖为子类中的私有(private)方法谢谢 最佳答案 你不能因为那样会违反

swift - 使用 NSTimer 调用私有(private)函数?

有没有办法让NSTimer在超时到期时调用privatefunc?(这有意义吗?NSTimer引用是类本地的,我不确定调用者在运行时的目标也是本地的。) 最佳答案 是的,你只需要标记函数@objc:@objcprivatefuncrunner(timer:NSTimer){然后它将响应选择器,但对Swift是私有(private)的。 关于swift-使用NSTimer调用私有(private)函数?,我们在StackOverflow上找到一个类似的问题: h

ios - Swift/SKStoreProductViewController pushViewController 结果为 (lldb)

为了将用户推送到iTunes商店以获取所需的项目,我使用了以下函数:funcopenStoreProductWithiTunesItemIdentifier(identifier:String){letstoreViewController=SKStoreProductViewController()storeViewController.delegate=selfletparameters=[SKStoreProductParameterITunesItemIdentifier:identifier,SKStoreProductParameterAffiliateToken:ITUN

ios - 使用swift 4访问扩展和另一个类中的fileprivate和private变量

我一直在浏览最近的swift文档,并研究了几个例子来理解swift4中的private和fileprivate关键字。我正在尝试访问同一类的扩展中的fileprivate和私有(private)变量以及该类的子类的另一个类,但输出没有结果。我正在以下列方式使用classprivateUsageExample:UIViewController{privatevarpriVar=falsefileprivatevarfPriVar=false}//usageofextensioninthesameclassextensionprivateUsageExample:UITextFieldDe

ios - 私有(private)函数 didFinishLaunchingWithOptions 没有被调用? ( swift 3)

didFinishLaunchingWithOptions不是应该在应用程序首次开始运行时调用吗?我在这个方法上设置了一个断点,当我在模拟器中运行应用程序时,断点没有被击中,这意味着该方法没有被调用。每当应用程序启动时,我都试图从UserDefaults加载一些数据,但它被完全忽略了。我注意到的一件事是默认情况下它是privatefunc而不是func。如果我去掉private,我会收到一条警告“在UIApplicationDelegate中有一个几乎相似的可选要求”。有人可以向我解释这意味着什么以及privatefunc是否与被忽略的方法有任何关系吗?当我在模拟器中运行我的应用程序时

ios - 不使用桥接 header 访问私有(private) UIKit 函数

考虑私有(private)C函数_UICreateScreenUIImage,返回当前设备屏幕的UIImage快照:OBJC_EXTERNUIImage*_UICreateScreenUIImage(void)NS_RETURNS_RETAINED;我可以把它放在桥接头中,然后像这样在Swift中访问它:MyApp-Bridging-Header.h@importUIKit;UIImage*_UICreateScreenUIImage(void)NS_RETURNS_RETAINED;MyClass.swiftletimage=_UICreateScreenUIImage()print

swift - Xcode lldb 错误 : can't print out Swift variable - get "$__lldb_injected_self.$__lldb_wrapped_expr_x" instead

有时,当试图在调试器中打印出一个变量时,会显示以下错误消息:error:warning::12:9:warning:initializationofvariable'$__lldb_error_result'wasneverused;considerreplacingwithassignmentto'_'orremovingitvar$__lldb_error_result=__lldb_tmp_error~~~~^~~~~~~~~~~~~~~~~~~~_error::18:5:error:useofunresolvedidentifier'$__lldb_injected_self'

swift - "public private(set)"访问修饰符如何工作?

所以我在这里浏览Apple文档-AppleDocs然后我遇到了这个:publicstructTrackedString{publicprivate(set)varnumberOfEdits=0publicvarvalue:String=""{didSet{numberOfEdits+=1}}publicinit(){}}添加publicprivate(set)究竟是如何工作的?如果您能展示一些更简单的示例/解释,那就太棒了! 最佳答案 这只是意味着numberOfEdits的getter是公共(public)的,但setter是私有