[英]Objective-c, method declaration in .h and private property in .m confusion
我正在閱讀本教程,其中他在cell .h file
聲明了一個接受block
的方法, 但未在.m class
實現該方法,他聲明了與method
@property (copy, nonatomic) void (^didTapButtonBlock)(id sender);
同名的private property
@property (copy, nonatomic) void (^didTapButtonBlock)(id sender);
這是什么做法? 只在.h中聲明方法並在.m中設置私有屬性
我試圖這樣簡單地做
我在.h文件中創建了一個方法
-(void)xyz:(NSString*)string;
在.m文件中
@property (nonatomic, strong) NSString *string;
但是Method definition for 'xyz' not found
警告Method definition for 'xyz' not found
Xcode
請告訴我們幕后發生了什么?
他公開了block變量的setter方法,但是將getter set
私有,如果您注意到的話,該方法包含單詞set
,這是屬性的setter方法。
這是您可以這樣做的方法:
-(void)setXyz:(NSString*)xyz;
並在.m中:
@property (nonatomic, strong) NSString *xyz;
這種方法是確保其他類無法獲取屬性實例,但可以為其賦值
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.