2013-07-08 8 views
2

Objective-C에서 상수 문자열을 정의하는 @을 잊어 버리는 경우가 있습니다. 이 예제 참조 : 예에서목표 C : 상수 문자열 및 C 문자열

NSArray *colors = [NSArray arrayWithObjects: 
         @"Red", @"Green", "Blue", @"Yellow", nil]; 

을, 나는 "블루"문자열의 앞에 @을 잊어 버렸습니다. 이로 인해 귀찮은 "잘못된 액세스"버그가 발생합니다.

이러한 문제를 방지하려면 어떻게해야합니까? 이 문자열을 감지하거나 경고를 표시하는 XCode와 어떤 방법이 있습니까? 그것은 나에게 보인다

+1

적절한 테스트를 통해 출시를 막을 수 있습니다. 그 너머에, 당신은 스스로 있습니다. – mah

답변

3

리터럴 구문

NSArray *colors = @[@"Red", @"Green", "Blue", @"Yellow"]; 

과 같은 오류가

enter image description here

+0

고마워, 그게 내가 원하는거야. –

+2

첫 번째 매개 변수로'const id []'를 기대하는'arrayWithObjects : count :'를 사용하기 때문에 오류가 발생합니다. – JDS

4

실행 분석기 아래와하다고 판단하는 것으로,이 보여주지 :

'NSArray'메서드 'arrayWithObjects :'에 대한 인수는 'char *'가 아닌 Objective-C 포인터 유형이어야합니다.