OC의 클래스 방법, 대상 방법과 함수

5774 단어 함수.
OC 언어의 방법과 함수는 차이가 있다. 클래스 내부 호출 방법, 단독으로 정의된 호출 함수, 정의된 형식도 다르다.
클래스 방법: +(void) 방법명, 대상 방법: -(void) 방법명, 함수:void 함수명(파라미터 목록)
 1 #import <Foundation/Foundation.h>

 2 

 3 void test();//test 

 4 

 5 // Person 

 6 @interface Person : NSObject

 7 + (void)test;// 

 8 - (void)test;// 

 9 - (int)sumWithNum1 : (int)num1 andNum2 : (int)num2;// 

10 

11 @end

12 

13 // Person 

14 @implementation Person

15 + (void)test

16 {

17     // 

18     Person *pp = [Person new];

19     [pp test];

20     

21     test();

22     NSLog(@"this is +test");

23 }

24 - (void)test

25 {

26     test();

27     //[Person test];// 

28     NSLog(@"this is -test");

29 }

30 - (int)sumWithNum1 : (int)num1 andNum2 : (int)num2

31 {

32     return num1 + num2;

33 }

34 @end

35 

36 

37 int main()

38 {

39     

40     Person *p = [Person new];

41     [Person test];

42     [p test1];

43 }

44 

45 // 

46 void test()

47 {

48     NSLog(@" ");

49 }

결론: 1->유방법명, 대상방법명, 함수명은 같을 수 있고 그들의 호출자가 다르기 때문에 서로 영향을 주지 않는다.
2-> 함수는 클래스 방법이나 대상 방법을 호출할 수 없습니다
3->함수는 클래스 방법과 대상 방법에 의해 호출될 수 있으며, 클래스 방법 내부에서는 이 클래스를 만드는 대상을 호출하는 방법도 사용할 수 있다.

좋은 웹페이지 즐겨찾기