(впервые в Objective-C, но хорошо разбирается в C / C ++).
В настоящее время у меня есть класс Objective-C, и ряд его переменных-членов будет указатели на функции. Эти указатели на функции будут изменены только самим классом, но могут использоваться другими классами.
Я не уверен, как настроить доступ к указанным указателям на функции.
В настоящее время я представляю себе решение объявить указанное указатели на функции @public, что, как я понимаю, позволит мне вызывать их с помощью оператора ->. Мне это кажется довольно неудовлетворительным, поскольку указатели на функции остаются открытыми для вмешательства, и это противоречит звуковому ООП.
Моя следующая склонность - использовать @property и объявить их только для чтения. Этот кажется более разумным. Полагаю, я бы вызвал их с помощью оператора точки, поскольку идея использования геттера для получения указателя функции и последующего его вызова кажется совершенно нелепой.
Можно ли использовать указатели на функции как свойства? Если да, то как я могу объявить их свойствами:
void (*sort)(SET, int) ;
char *(*toASCII)(CARD) ;
У меня такое чувство, что я упускаю небольшой нюанс в объявлении их как свойств.