BlackHatSamurai
BlackHatSamurai

Reputation: 23483

Declaring floats in objective c

I'm new to Objective-C and I'm having trouble with the whole nonatomic, strong, weak, etc. I'm wondering if I will have any issues using Core Data with float values which are defined like so:

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

Should I declare the differently?

Upvotes: 12

Views: 22836

Answers (2)

Sergey Kalinichenko
Sergey Kalinichenko

Reputation: 726559

Yes, you should declare them without asterisks:

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

Asterisks indicate pointers. All Objective C classes are declared with asterisks, because instances are referred to through pointers. Primitives such as floats, ints, etc. are defined as values, i.e. without asterisks. Same goes for typedef-ed types such as CGFloat and NSInteger: scalar fields of these types should be defined without an asterisk.

Upvotes: 21

Henry F
Henry F

Reputation: 4980

You should definitely lose the *, unless you are meaning to create a pointer. Outside of that it looks great!

Upvotes: 0

Related Questions