Déclaration des flotteurs dans l'objective c

Je suis nonatomic en Objective-C et j'ai des problèmes avec tout le nonatomic , strong , weak , etc. Je me request si j'aurai des problèmes en utilisant des Core Data avec des valeurs float qui sont définies comme suit:

 @property (nonatomic) float * rating; @property (nonatomic) float * mRating; 

Devrais-je déclarer différemment?

Oui, vous devriez les déclarer sans astérisques:

 @property (nonatomic) float rating; @property (nonatomic) float mRating; 

Les astérisques indiquent des pointeurs . Toutes les classs Objective C sont déclarées avec des astérisques, car les instances sont référencées par des pointeurs. Les primitives telles que float s, int s, etc. sont définies comme des valeurs , c'est-à-dire sans astérisques. Il en va de même pour les types typedef-ed tels que CGFloat et NSInteger : les champs scalaires de ces types doivent être définis sans astérisque.

Vous devriez définitivement perdre le * , sauf si vous voulez créer un pointeur. En dehors de ça ça a l'air génial!