我想在objective-c中为下面的类准备小的静态库: A类,B类,C类。我想在静态库中包含这些类。现在,A类可以访问B类或C类方法的公共成员。
现在当我将上面的库集成到其他项目中时, 我准备D级,只能访问A级和B级 不是C级。我该怎么做?
我的另一个疑问是假设 NSString * isValid在B类中声明。
我希望上面的变量可以从A类和C类访问 我的意思是包含的库文件可以访问上面的变量。
但是从外部库上面的变量无法访问。 如何将其设为私有,以便可以在库本身内访问,而不是在库外部访问?
感谢您的帮助!
答案 0 :(得分:-1)
据我所知,Obj-C无法像你需要的那样保护对公众成员的访问。一种常见的方法是不在头文件中包含随静态库一起提供的方法和ivars。要自己编译库,您当然必须使用完整的私有标题。
请注意,这不适用于Objective-C ++,其中在编译时必须为库的客户端知道类结构。