从未见过Objective-C中的语法:打开/关闭大括号w/out方法/条件语句,目的是什么?

Liz*_*zza 3 iphone syntax cocoa-touch objective-c ios

我正在查看我下载的Xcode项目,并且看到了我不熟悉的代码语法:

在此输入图像描述

大括号不属于方法签名或任何其他条件语句,它们只是漂浮在那里.这有什么意义?纯粹是为了代码隔离/可读性目的?

tro*_*foe 6

这只是块范围; 并且在C和C++中是相同的.块内声明的任何变量都不可访问.我通常在switch语句中使用它:

switch(x) {
case 1: {
    const char *s = "hi";
}
break;
case 2: {
    const char *s = "ho";
}
break;
// etc.
}
Run Code Online (Sandbox Code Playgroud)

请注意,有两个变量被调用s,它们都不会干扰另一个变量,因为它们在它们自己的范围内.