Я хочу создать статическую библиотеку в Objective C iOS. Но в этом я хочу определить только структуру в файле .h. Там не будет никакого файла .m файла.Как включить файл .h, содержащий структуру только в статической библиотеке
struct ApiResponseStruct
{
__unsafe_unretained NSString * const A;
__unsafe_unretained NSString * const B;
__unsafe_unretained NSString * const C;
__unsafe_unretained NSString * const D;
};
extern const struct ApiResponseStruct ApiResponse;
Итак, когда я создаю свою статическую библиотеку и включаю ее в демонстрационное приложение. Это всегда показывает мне ошибку компоновщика.
Undefined symbols for architecture armv7:
"_ApiResponse", referenced from:
-[TestLib setApiResponse] in libTestLib.a(TestLib.o)
-[TestLib getApiResponse] in libTestLib.a(TestLib.o)
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Итак, может кто-то помочь мне в решении этого вопроса.
Спасибо заранее.
создать объектный файл протокола C. у него просто будет .h. Теперь ваши другие классы должны применять этот протокол. Скажите мне, если не ясно или если требуется больше информации. Как создать файл протокола: 1. Новый файл 2. Cocoa Touch -> Objective C Протокол –
Я не создает каких-либо протоколов. Мне нужно сделать, создать.h файл с простой структурой, о которой я упоминал в вопросе. Я хочу, чтобы этот файл был включен в мою статическую библиотеку, и мне нужно использовать этот файл в своем демонстрационном приложении. – user3124624
Да, я знаю это. что я говорю, создайте файл протокола Obj-C, перечислите свойства, которые вам нужны в вашей структуре в файле. Не кладите туда структуру. Теперь используйте этот файл протокола в своем приложении. Если какой-либо класс нуждается в определенной структуре, пусть они соблюдают протокол. могу ли я передать свою мысль? –