我如何使它成为私有成员或类的方法,以便它可以在静态库本身而不是在库外访问?

时间:2012-08-17 06:05:15

标签: iphone objective-c ios static-libraries

我想在objective-c中为下面的类准备小的静态库: A类,B类,C类。我想在静态库中包含这些类。现在,A类可以访问B类或C类方法的公共成员。

现在当我将上面的库集成到其他项目中时, 我准备D级,只能访问A级和B级 不是C级。我该怎么做?

我的另一个疑问是假设 NSString * isValid在B类中声明。

我希望上面的变量可以从A类和C类访问 我的意思是包含的库文件可以访问上面的变量。

但是从外部库上面的变量无法访问。 如何将其设为私有,以便可以在库本身内访问,而不是在库外部访问?

感谢您的帮助!

1 个答案:

答案 0 :(得分:-1)

据我所知,Obj-C无法像你需要的那样保护对公众成员的访问。一种常见的方法是不在头文件中包含随静态库一起提供的方法和ivars。要自己编译库,您当然必须使用完整的私有标题。

请注意,这不适用于Objective-C ++,其中在编译时必须为库的客户端知道类结构。