2012-07-17 4 views
0

저는 person이라는 속성을 가지고 있습니다. 디버그 할 때 속성 값을 나열하고 싶지만 xcode는 "isa"를 표시합니다. 어떻게 Eclipse에서이를 수행 할 수 있습니까?xcode : xcode에서 디버깅하는 방법?

엑스 코드 :

식 : 후드 아래

enter image description here

답변

3

, 속성 액세스 사용 방법. name이라는 속성은 name 메서드를 사용하여 읽을 수 있으며 setName: 메서드를 사용하여 설정할 수 있습니다. 디버거의 po 명령을 사용하여 개체에 대한 설명을 인쇄 할 수 있습니다. 디버거 콘솔에서이 입력하십시오 :

po [p name] 

po 명령은 인쇄하고있는 객체에 debugDescription 메시지를 보내는 작품, 기본적으로는, debugDescription 그냥 description 메시지를 보냅니다. 그래서 당신은 당신의 Person 클래스에이 방법을 추가 할 수 있습니다

- (NSString *)description { 
    return [NSString stringWithFormat:@"<%@: %p name=%@>", self.class, self, self.name]; 
} 

그런 다음이 같은 디버거 명령을 사용할 수 있습니다

po p 

과 같은 출력을 얻을 :

<Person: 0x10013fd60 name=Jack> 
+0

감사합니다. 디버그 영역의 모든 속성을 나열 하시겠습니까? 아니면 그렇게 할 방법이 있습니까? 어쩌면 속성 대신 인스턴스 변수를 사용합니까? – NOrder

+0

현재 버전의 Xcode에서는 모든 인스턴스 변수를 볼 수 없습니다. LLDB 디버거로 바꾸면 더 좋은 결과를 얻을 수도 있고, Xcode의 향후 버전을 기다려야 할 수도 있습니다. –

+0

정말 고마워요. – NOrder

1

강탈의 경우, 게시물이 작동하지 않으면 콘솔에서 bt (백 트레이스 용)를 입력 해보십시오.

관련 문제