问题描述
|
我在接口文件中有以下代码:
#import <UIKit/UIKit.h>
#import <AddressBook/AddressBook.h>
@class FaxRecipient;
//DeFinition of the delegate\'s interface
@protocol AddLocalRecipientsTableViewControllerDelegate
-(void)getLocalRecipient:(FaxRecipient*)recipient;
@end
@interface AddLocalRecipientsTableViewController : UITableViewController {
NSMutableArray *localRecipientItems;
NSURLConnection *connectionInprogress;
UIActivityIndicatorView *activityIndicator;
NSIndexPath *lastIndexPath;
FaxRecipient * faxRecipient;
}
@property(nonatomic,retain) NSIndexPath *lastIndexPath;
@property(nonatomic,retain)FaxRecipient * faxRecipient;
@property (nonatomic,assign) id<AddLocalRecipientsTableViewControllerDelegate> delegate;
-(void) loadLocalRecipients;
我的实现文件中包含以下行:
@synthesize delegate=_delegate;
带下划线的合成是什么意思?我的意思是我知道常规合成的作用。一切正常,我在其他站点查看了此代码示例。
解决方法
您的媒体资源几乎总是具有后备变量。什么
@synthesize delegate=_delegate;
声明您的搜索栏的后备变量将称为_searchBar。这使您可以将属性名称与变量名称分离。实际上,如果您不使用@synthesize,则根本不需要后备变量。
这个可以:
避免与变量名冲突
和
当我使用
局部变量以及当我使用
实例变量。