for(LevelMeter *thisMeter in _subLevelMeters){
{
xxxxx
}
我是iphone开发的新手。我正在研究iphone中的录音。我已经从Apple下载了“speak here”示例程序。我在示例程序中遇到了上面的代码。我无法理解for循环.LevelMeter是单独的class._subLevelMeters是一个NSArray。他们使用了“in”里面的循环。所以请任何人告诉上面的函数循环。请帮帮我。谢谢。
答案 0 :(得分:4)
这只是许多语言中的for循环的标准。对于循环的每次迭代,变量thisMeter包含数组中的下一个对象。一个例子应该清楚说明:
NSArray *array = [NSArray arrayWithObjects:@"1", @"2", @"3", nil];
for(id *string in array)
{
NSLog(string);
}
// The above code will output the following:
// 1
// 2
// 3
答案 1 :(得分:1)
_subLevelMeters
是一个包含许多LevelMeter对象的NSArray。
这里使用的语法是Objective-C 2.0的快速枚举。
基本上,就像说“对于_subLevelMeters数组中的每个LevelMeter对象,执行此代码”。或者用一种更通俗的方式:“为数组中的每个LevelMeter做这个东西”。
希望有所帮助。