Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在为iPhone开发时,您遇到的最令人讨厌的错误是什么?_Iphone_Objective C - Fatal编程技术网

在为iPhone开发时,您遇到的最令人讨厌的错误是什么?

在为iPhone开发时,您遇到的最令人讨厌的错误是什么?,iphone,objective-c,Iphone,Objective C,任何语言都有其著名而痛苦的错误。在为iPhone开发时,我很乐意了解哪些错误会赢得这样的声誉 请列出你的 我同意 如果可以的话,请列出错误代码/信息以及原因,以便发表更有用的文章 我讨厌这个 EXC\u BAD\u ACCESS(有时称为EXEC\u BAD\u ACCESS)我讨厌所有的设备同步错误,比如 “iTunes无法连接到iPhone,因为发生未知错误(0xE800025)” 哦,人性。我想说,最令人沮丧的错误实际上是从未发生过的错误。例如,当您有一个未正确“插入”的IBOutlet,

任何语言都有其著名而痛苦的错误。在为iPhone开发时,我很乐意了解哪些错误会赢得这样的声誉

请列出你的

我同意 如果可以的话,请列出错误代码/信息以及原因,以便发表更有用的文章

我讨厌这个
EXC\u BAD\u ACCESS(有时称为EXEC\u BAD\u ACCESS)

我讨厌所有的设备同步错误,比如

“iTunes无法连接到iPhone,因为发生未知错误(0xE800025)”


哦,人性。

我想说,最令人沮丧的错误实际上是从未发生过的错误。例如,当您有一个未正确“插入”的
IBOutlet
,而不是得到
NullPointerException
或类似的东西时,代码只是默默地不做任何事情。为什么向“null”对象发送消息不会引发异常?Grr…

任何与代码签名有关的错误。

自动释放
发送到您不拥有的对象时,应用程序因EXC\u BAD\u访问而崩溃,您不知道该对象是何时释放的。

我最讨厌的错误是当您下载示例代码以检查某个对象时,请运行它,并意识到它设置为在未更改捆绑包标识符且代码未签名的情况下在设备上运行。

我特别讨厌这个错误

感谢您提交[申请表] 此处的名称]到应用程序商店。我们已经 审查了申请,并, 符合我们的标准 审批流程,我们选择不 发布此应用程序。像你一样 要知道,苹果公司在其 自行决定是否拒绝 任何理由的申请


我鄙视关于“gcc退出,状态代码为1”的错误,并且没有其他信息。

我喜欢它,也讨厌它,因为你可以向nil对象发送消息。我喜欢它,因为你不必到处检查零。我讨厌它,因为有时候你要找那个错误好几个小时,而你所做的就是向一个nil对象发送一条消息。在这种情况下,一个错误就好了

列出错误代码/消息和原因如何?可能会成为一个更有用的帖子。我喜欢真正的问题。不是那些不应该被问到的主观问题……@Burkhard:我同意。我不知道这些问题有什么目的。他们是否帮助任何人更好地编程?他们解决问题了吗?也许,他们只是用来问一个问题,也许还能获得几次机会。我也喜欢真正的问题。然而,在挣扎了几个小时之后,与一个分享你痛苦和快乐的社区建立联系是很好的。如果我们在stackoverflow.com上有一个单独的地方与社区建立联系,那将是一件很好的事情。因为你不必到处检查零值(参见:Java)远比当你期望一个对象出现时,让一个消息传递给一个零对象所导致的偶尔失误要严重得多。在消费者应用程序开发中,保持运行的代码总是比崩溃的代码更受欢迎……我完全不同意。我的开发时间比JVM检测空引用所需的几纳秒要宝贵得多这就需要额外的几纳秒来检测nils,以适应这种特殊情况。不必到处检查nils,可以节省大量代码和开发时间。如果你真的想保证你的IBoutlet是连接的,我发现在awakeFromNib或类似软件中对每个outlet使用assert(yourOutlet!=nil)可以很好地测试它们。我节省了开发人员更多的时间,不必检查nil,要利用这种能力智能地编写依赖于将消息传递给nil的代码是正常的,我从来没有因为意外的nil引用而引起问题。请记住,Objective-C是一种消息传递语言的核心,而不是真正的C。我已经全职为iPhone编写了一年多的应用程序,我只遇到过两次对象为零导致问题,这两次都是简单的UI问题,其中有东西无法显示或动作无法触发,我在大约一分钟内修复了它。这在xcode 3.1.3中得到了改进,但我讨厌每天等待代码签名所浪费的时间。我从未发生过这个错误。然而+1,因为我太害怕了。