Mailing Lists: Apple Mailing Lists
Image of Mac OS face in stamp
Re: Exposing Methods in a Framework
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Exposing Methods in a Framework



I would find it slightly cleaner by "hiding" your private ivars inside a category of the class, that you define elsewhere. For example:

This is what you have in your public header:

@interface ClassForEveryone : NSObject
{
}
...
@end

Then in a private header, you do:

@interface ClassForEveryone (Private)
{
  id secretVar;
}
...
@end

31 maj 2006 kl. 00.55 skrev David Alter:

I have a framework that other developers will use. In it I want to expose specific methods but not necessary all the instance variables and methods. I was looking for the preferred way of doing this with obj-c. I was planning on using a sub class and having the subclass .h in my framework header folder.

For example here are two classes. The class ForEveryoneToSee does not expose my instance variables. My framework would have this in the headers folder. It would not have the .h for ForMeToSee. Is this the preferred way of doing this? It seams like there should be a cleaner way to do this.

@interface ForEveryoneToSee : NSObject {

}
-(NSString *)		 myData;
-(void)			setMyData(NSString * )inData;

@end


@interface ForMeToSee : ForEveryoneToSee { NSString * _myData; } -(NSString *) myData; -(void) setMyData(NSString * )inData;

@end


thanks for the help.

-dave

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden

_______________________________________________ Do not post admin requests to the list. They will be ignored. Cocoa-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden
References: 
 >Exposing Methods in a Framework (From: David Alter <email@hidden>)



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2011 Apple Inc. All rights reserved.