Я хочу, чтобы GUID в моей модели target-c действовал как уникальный идентификатор. Моя проблема заключается в том, как сохранить CFUUIDRef с моим NSCoder, поскольку это не тип объекта.
Я продолжаю играть со следующими строками для кодирования / декодирования, но не могу найти хороших примеров того, как сохранять типы структур в target-c (все мои типы NSObject хорошо кодируются / декодируются).
например. для кодирования я пытаюсь (что я думаю, выглядит хорошо?):
CFUUIDBytes bytes = CFUUIDGetUUIDBytes(uuid);
eencoder encodeBytes: &bytes length: sizeof(bytes)];
и для декодирования, где я застреваю:
NSUInteger blockSize;
const void* bytes = [decoder decodeBytesForKey: kFieldCreatedKey returnedLength:&blockSize];
if(blockSize > 0) {
uuid = CFUUIDCreateFromUUIDBytes(NULL, (CFUUIDBytes)bytes);
}
Я получил сообщение об ошибке "преобразование в тип без масштабирования" выше - я пробовал несколько воплощений из фрагментов кода, которые я видел в Интернете. Может кто-то указать мне верное направление?
Тим