【发布时间】:2010-09-27 03:18:56
【问题描述】:
(Objective-C 新手,但精通 C/C++)。
目前我有一个 Objective-C 类,它的一些成员变量将是函数指针。这些函数指针只会被类本身修改,但可能被其他类使用。
我不确定如何设置对所述函数指针的访问。
我目前设想的解决方案是声明所述函数指针@public,据我了解,这将允许我使用 -> 运算符调用它们。这对我来说似乎相当不满意,因为函数指针对干预是开放的,并且它在健全的 OOP 面前飞行。
我的下一个倾向是使用@property,并将它们声明为只读。这似乎更加理智。我假设我会使用点运算符来调用它们,因为使用 getter 获取函数指针然后调用它的想法似乎完全可笑。
可以将函数指针用作属性吗?如果是这样,我将如何将这些声明为属性:
void (*sort)(SET, int) ;
char *(*toASCII)(CARD) ;
我觉得我在将这些声明为属性时遗漏了一点细微差别。
【问题讨论】:
标签: objective-c class oop des