繁体   English   中英

Objective-C,.h中的方法声明和.m中的私有属性

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM