War*_*ior 5 iphone cocoa cocoa-touch objective-c
我是iphone开发的新手.我正在研究iphone中的录音.我已经从Apple下载了"speak here"示例程序.它包含LevelMeter.h文件,其中
@interface LevelMeter : UIView {
CGFloat _level, _peakLevel;
}
Run Code Online (Sandbox Code Playgroud)
该物业被设定为
@property CGFloat level;
@property CGFloat peakLevel;
Run Code Online (Sandbox Code Playgroud)
声明像_level这样的变量并将其属性设置为level是什么用.请解释一下.谢谢.
该@property
指令相当于声明一个 setter 和一个 getter。如果是level
,
@property CGFloat level;
Run Code Online (Sandbox Code Playgroud)
可以替换为
- (CGFloat)level;
- (void)setLevel:(CGFloat)v;
Run Code Online (Sandbox Code Playgroud)
level
为什么要为一个名为 name 的变量声明一个属性,为什么要首先_level
用一个前导来命名一个变量?_
我不知道。
它是如何工作的,答案如下LevelMeter.m
:
- (CGFloat)level { return _level; }
- (void)setLevel:(CGFloat)v { _level = v; }
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1310 次 |
最近记录: |