2009-08-05 6 views
4

J'ai un programme où, pour certains chemins de code, les constantes du carnet d'adresses (telles que kABPersonEmailProperty, kABPersonAddressProperty) sont évaluées à leur valeur normale non nulle. Cependant, si je suis un chemin de code différent, toutes ces constantes évaluent à zéro.Constantes du carnet d'adresses évaluées comme zéro

En outre, une fois que je suis le chemin de code "réussi", si je prends le chemin de code problématique cela fonctionne.

Est-ce une sorte de problème de liaison de compilation?

Je pourrais aussi être en train de relâcher une variable quelque part.

Répondre

5

Très bien, mystère résolu. Au crédit d'Apple, le comportement est documenté.

Voir link text

« Considérations particulières: La valeur de ces constantes est indéfinie jusqu'à ce que l'un des suivants a été appelé: ABAddressBookCreate, ABPersonCreate, ABGroupCreate. »

+3

Bien sûr, c'est documenté. Mais je pense toujours qu'il viole un certain contrat de langue, parce que ces variables sont déclarées comme 'const' – user102008

+0

Je ne trouve plus le texte sur cette page. Le problème existe toujours cependant. – Andreas

Questions connexes