Создать CFTree в Задаче C - PullRequest
       20

Создать CFTree в Задаче C

1 голос
/ 24 февраля 2011

Я хочу создать базовое CFTree с некоторой строковой информацией в Objective-C.

Это мой код

//CFtree attempt
NSString *info;
CFTreeContext ctx;

NSString *treeString = [[NSString alloc] initWithFormat:@"the tree string"];
info = treeString;

ctx.info = info;
CFTreeRef myTree = CFTreeCreate(NULL, &ctx);

В последней строке я получаю ошибку "EXC_BAD_ACESS".Может кто-нибудь подскажите, пожалуйста, как правильно это настроить.

Ответы [ 2 ]

2 голосов
/ 24 февраля 2011

Кажется, что ctx должен быть инициализирован.

ctx.version = 0;
ctx.info = info;
ctx.retain = CFRetain;
ctx.release = CFRelease;
ctx.copyDescription = CFCopyDescription;
1 голос
/ 24 февраля 2011

Возможно, вы захотите инициализировать структуру ctx до 0, прежде чем использовать ее, поскольку в ней есть члены, которые в противном случае могут вызвать ошибочное поведение, так как CFTreeCreate считает, что они указывают на что-то важное.1004 *

...