Pergunta

Por que estou recebendo um erro "fora do escopo" sempre que tento acessar a variável "URL" nesse loop?

for(NSString *url in self.winnerImageURLs) {
        [mediaItemString appendFormat:@"{\"type\":\"image\",\"src\":\"%@\",\"href\":\"%@\"},", url, url];
    }

A classe de item muito no nsmutablearray "Self.winnerImageurls" volta como NSCFString, então não tenho certeza do que é o negócio aqui.

Alguma idéia do que estou fazendo de errado ???

Obrigado

Foi útil?

Solução

Se você está falando sobre acessar a variável URL no depurador, isso acontece bastante. Não é um problema em si.

Outras dicas

A curta anwer é que é para ser assim. Uma resposta mais longa é que NSString é um cluster de classe.

Cluster de classe

Um cluster de classe é uma arquitetura que agrupa várias subclasses privadas e concretas sob uma superclasse abstrata pública. O agrupamento de classes dessa maneira fornece uma interface simplificada para o usuário, que vê apenas a arquitetura publicamente visível. Nos bastidores, porém, a classe abstrata está chamando a subclasse privada mais adequada para executar uma tarefa específica.

Muitos comuns Cocoa As aulas são implementadas como clusters de classe, incluindo NSArray, NSString, e NSDictionary.

Você cria e interage com instâncias do cluster, assim como faria com qualquer outra classe. Nos bastidores, porém, quando você cria uma instância da classe pública, a classe retorna um objeto da subclasse apropriada com base no método de criação que você chama. (Você não e não pode escolher a classe real da instância.)

Exemplo NSString

NSString *a = @"UTF32.txt";

NSString *b = [NSHomeDirectory() stringByAppendingPathComponent:a];

NSTextStorage *storage = [[NSTextStorage alloc] initWithString:b];

NSString *c = [storage string];

Cada um de A, B e C pode ser (e em 10.5 é) uma instância de uma subclasse privada diferente (e, de fato, no Mac OS X V10.5, cada um é). Embora cada um dos objetos seja de uma subclasse privada de NSString, é conveniente considerar cada um dos objetos como instâncias do NSString classe.

Sobre Clusters de classe no site de desenvolvedores da Apple: http://developer.apple.com/mac/library/documentation/cocoa/conceptual/cocoafundamentals/cocoaobjects/cocooobjects.html#/pple_ref/doc/uid/tp40002974-ch4-spw34

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top