Могу ли я удалить @private, созданный Core Data? - PullRequest
0 голосов
/ 16 апреля 2011

Что означает @private в файле, созданном Core Data ниже?Я знаю , что означает @private в Objective-C , но после него не указаны переменные экземпляра, так что я не могу просто удалить его?

//
//  Event.h
//

#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>


@interface Event : NSManagedObject {
@private
}
@property (nonatomic, retain) NSDate * timestamp;

@end


//
//  Event.m
//  

#import "Event.h"


@implementation Event
@dynamic id;

@end

Ответы [ 3 ]

4 голосов
/ 16 апреля 2011

Вы можете смело вынимать его, это не изменит семантику вашего класса.Если вы не знаете, что генерирует для вас XCode (хотя это разумное значение по умолчанию), я бы посоветовал вам взглянуть на https://github.com/rentzsch/mogenerator.

1 голос
/ 16 апреля 2011

Xcode теперь по умолчанию генерирует классы с @private для переменных экземпляра, которые вы должны объявить в случае, если они вам нужны. Вы можете безопасно удалить это @private, поскольку, как вы уже заметили, нет переменных экземпляра. Фактически, это объявление класса эквивалентно

@interface Event : NSManagedObject
@property (nonatomic, retain) NSDate * timestamp;   
@end
1 голос
/ 16 апреля 2011

Можно, но это не больно. Если вы сгенерируете модель снова, она просто вернет ее обратно.

...