--- On Tue, 7/29/08, Torsten Curdt <[EMAIL PROTECTED]> wrote:

> But wait ...this works OK for methods. But what about adding
> ivars?
> 
>   @interface MyClass (Private)
>   {
>       int myvar;
>   }
> 
>   - (int) myvar;
> 
>   @end
> 
> This gives a syntax error. Looking through some docs it
> seems I cannot  
> add ivars through a category.
> So how can I have private ivars that don't show up in
> the interface?

You can't without hacks like putting a byte blob or pointer at the bottom of 
your class and filling that with extra ivars. Apple does this in its frameworks 
to maintain binary compatibility while still being able to change the structure 
of a class. But unless backward binary compatibility is a concern for you, it's 
easier just to use @private if the variables must be private rather than 
protected.

Cheers,
Chuck


      
_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to