2013-04-12 2 views
1

이클립스 IDE 및 다른 많은 클래스에서 클래스의 일부 개인 속성을 선언 할 때 getters 및 setters 메서드를 자동으로 생성 할 수 있습니다. 예를 들어 약 20 개의 속성으로 선언하고 마침내 모든 메서드를 만들면 매우 유용합니다.자동 코드 생성

우리는 xCode IDE에서 동일한 기능을 가지고 있습니다 ... ".h"일부 선언 방법으로 코딩 할 때 ".m"에 자동으로 선언을 넣을 수 있습니다 ....

예 :

".H"의

벨로 코드 :

- (NSString *)loadMessageLabelFr:(id)sender{ 

} 
"하는 .m"의

- (NSString *)loadMessageLabelFr:(id)sender; 

코드가 메뉴 기능으로 생성 된 원하는 ''

+0

JetBrains의 AppCode를 사용해보십시오. – AndrewShmig

답변

1

- 여러 번, 10 선언 후 메서드를 사용하여 구현 파일로 전송하고 싶습니다.

그러나 ...

이 자바 객체하지 않고 파일 조직이

  1. 당신은 방법을 정의 할 필요가 없습니다 완전히 다른이며 여전히 유효한 사용 사례입니다. 당신은 여러 구현 파일에 하나의 헤더 방법을 정의 할 수 있습니다 런타임

  2. 에서 메소드 정의를 추가 할 수 있습니다 특정 메소드 정의를 가지고 doesNotRecognizeSelector:

  3. 에서 메서드 호출을 처리하지 않는 클래스가 있습니다.

이러한 이유로 인해 구현 파일에서 메소드 헤더를 생성하는 것이 장단점을 가질 수 있습니다.

간단한 엑스 코드 용액 .m.h에서

  1. 복사 - 붙여 넣기 방법의 헤더이다.
  2. 자동 완성 기능을 사용하여 헤더의 시작 부분을 씁니다 (예 : - (BOOL)을 사용하면 더 빨리 자동 완성 할 수 있습니다.
0

인스턴스 변수를 어떻게 정의합니까?

질문에 대한 답변 (예 : 변수)은 '아니요, 실제로 필요합니까?'... 속성을 사용하면 컴파일 중에 접근성 메서드가 만들어집니다. 실제로는 아주 적은 접근 자 메서드를 명시 적으로 구현해야합니다.

공용 메서드의 경우 대답은 no이지만 메서드 정의를 복사 한 다음 대괄호를 추가하면 많은 작업이 필요하지 않으므로 세미콜론을 제거 할 필요가 없습니다.

- a 

와 엑스 코드는 적절한 방법 이름으로 당신을위한 라인의 자동 완성을 제공합니다 :

또한

,이 두 변수와 공개적으로 정의 된 메소드 작동, 입력을 시작합니다.

3

게터와 설정자는 클래스 속성에 대해 컴파일러에서 암시 적으로 생성됩니다. 예 :

1) 속성의 값을 저장 _count를라는 이름의이 바르 :

@property int count; 

있는 것은 암시 적으로 당신에게 다음과 같은 사항을 제공합니다.

2) 게터와 세터

- (int)count 
{ 
    return _count; 
} 

- (void)setCount:(int)count 
{ 
    _count = count; 
} 

이 코드는 컴파일시에 삽입됩니다, 그래서 당신이하는 .m 파일에 표시되지 않습니다. 이 방법은 사소한 getter와 setter가 코드를 복잡하게 만들지 않기 때문에 좋습니다. 당신이 당신의 수완 또는 세터가 값을 바로 설정보다 다른 일을하거나 반환 할 경우, 당신은 방법을 일반적인 방법을 정의 할 필요가있다, 예를 들면 :

당신이 무슨 뜻인지 알아
- (void)setCount:(int)count 
{ 
    NSLog(@"Count set to %d", count); 
    _count = count; 
} 
관련 문제