2014-12-17 3 views
0

나는이 아이폰 OS 기능을 사용하려고(instancetype) arrayWithObjects : (id)를 어떻게 사용합니까?

  • + (instancetype) arrayWithObjects (ID)

나는 그것으로 배열을 통과 생각하지만, 나는 그 배열에 액세스하는 방법을 알아낼 수 없습니다 나는 이것을 어떻게 사용하는지 이해하지 못합니다. 나는 그것을 이해하려고 몇 시간을 보냈다. 제발 도와주세요!

+ (instancetype)arrayWithObjects:(id)[@"Starcraft", @"League of Legends", @"Starcraft 2", @"World of Warcraft", 
@"The Sims", @"Icewind Dale", @"Shadowbane", @"Grand Theft Auto 3", @"Pac Man", @"Astroids", 
@"Grand Theft Auto 4", @"Grand Theft Auto 5", @"MineCraft", @"Mass Effect", @"Mass Effect 2", 
@"Mass Effect 3", @"Dragon Age", @"The Sims 2", @"The Sims 3", @"Rockband", @"Rockband 2", 
@"Rockband 3", @"Dragon Age 2", @"The Witcher", @"The Witcher 2", @"Plants vs Zombies", 
nil] 
{ 
    return [[[self class] alloc] init]; 
} 
+0

배열을 초기화 하시겠습니까? –

+0

당신이하고 싶은 것이 명확하지 않습니다. 객체 배열을 만들고 싶습니까? –

+0

이 전역 함수를 사용하는 방법을 배우고 싶습니다. 어떻게 사용하는지 알아낼 수 없으므로 배열을 적절하게 만드는 방법과 배열을 호출하거나 배열과 상호 작용하는 방법을 배우고 싶습니다. 이 기능이 배열 팩토리가 아니어야합니까? – Hammerhead96

답변

2

이것은 당신이 객체의 전체 배열 대신 원래 한 것입니다 거기에 하나의 배열 배열을 원한다면 당신이 정말로 원하는 것입니다.

NSArray* array = [NSArray arrayWithObjects:@"Starcraft", @"League of Legends", @"Starcraft 2", @"World of Warcraft", 
@"The Sims", @"Icewind Dale", @"Shadowbane", @"Grand Theft Auto 3", @"Pac Man", @"Astroids", 
@"Grand Theft Auto 4", @"Grand Theft Auto 5", @"MineCraft", @"Mass Effect", @"Mass Effect 2", 
@"Mass Effect 3", @"Dragon Age", @"The Sims 2", @"The Sims 3", @"Rockband", @"Rockband 2", 
@"Rockband 3", @"Dragon Age 2", @"The Witcher", @"The Witcher 2", @"Plants vs Zombies", 
nil]; 

끝 부분을 나타내는 nil로 끝나는 주어진 문자열의 런타임에 NSArray를 만듭니다.

+0

대단히 감사합니다 ahwulf,하지만, 아니요.이 전역 메서드, array factory, + (instancetype) arrayWithObjects를 사용하는 방법을 배우려고합니다. (id) – Hammerhead96

+0

제공된 정확한 방법을 사용하여 NSArray를 만듭니다 귀하가 지정한 NSString 개체를 포함하는 개체. 이 답변은 정확합니다. 이 메서드를 재정의하고 싶지는 않지만 NSArray 개체를 만들기 위해/호출을 사용하고 싶을뿐입니다. – Jef

+0

사실 예, 여기서 행은 전역 메소드를 사용합니다. 보지 못할 수도있는 것은 그것이 인스턴스로 돌아 오기 때문에 그것이 전역이라는 것입니다.하지만 그것이 글로벌이라는 것을 확신합니다. 다음은 전역 변수 [NSArray arrayWithObjects : @ "object", nil]의 예입니다. 인스턴스 변수는 인스턴스에서 호출됩니다. 예를 들어, [myArray sort]와 같이 대괄호 "[" 어떤 것을 돌려 줄 수도 그렇지 않을 수도 있지만 NSArray 팩토리/청사진에서 호출되지 않기 때문에 "인스턴스"입니다. –