Jim*_*ers 8 objective-c llvm ios automatic-ref-counting
我正在查看Apple示例代码中Square Cam的一些示例代码.我想在使用ARC的现代项目中复制它的一些功能.但是,有大量的需求声明,例如:
BOOL success = (destination != NULL);
require(success, bail);
Run Code Online (Sandbox Code Playgroud)
这会生成编译器错误:
转到受保护的范围.
我的问题是 - 在使用ARC的项目中处理此类语句的适当方法是什么?
Lew*_*s42 10
我遇到了同样的问题(使用相同的示例代码).代码看起来像这样:
BOOL success = (destination != NULL);
require(success, bail);
//Initialise some variables
bail:
//Deal with errors
Run Code Online (Sandbox Code Playgroud)
我在声明块周围添加了大括号,以使其范围清晰:
BOOL success = (destination != NULL);
require(success, bail);
{
// *** Initialise some variables ***
}
bail:
{
//Deal with errors
}
Run Code Online (Sandbox Code Playgroud)
它解决了我的问题.通过观察这个我也了解到,有时可以扩展构建错误以获得更多细节.
| 归档时间: |
|
| 查看次数: |
4155 次 |
| 最近记录: |