2

我只是考虑这种情况,我想声明一个从其他类动态扩展的类 C。假设我有 A 类和 B 类。现在,我希望 C 类基于指定条件扩展 A 或 B,例如:

#ifdef USE_CLASS_A
class C: A
#else 
Class C: B
#endif

我对 Objective C 和 ios 没有更多的经验。所以请告诉我我是否可以做到这一点。

非常感谢:)

更新:我只需要在编译时动态,而不是运行时。我的意思是,在编译期间,类 C 将扩展 A 或 B。这种扩展将永远存在,不要在运行时更改。

4

1 回答 1

1

根据您的更新,答案是肯定的 - 使用#if/#ifdef您可以在编译时确定 C 类是否完全按照您建议的方式扩展 A 类或 B 类。

当然,A 类和 B 类更好地提供相同的一组常用方法,并且您的代码只调用这些方法,否则您将需要在使用 C 类时进一步的条件代码(编译或运行时)。

于 2012-12-13T11:20:16.213 回答