2013-04-08 1 views
-1

NSMutableArray를 반환하는 NSObjectClass에서 메서드를 호출하고 해당 MutableArray를 호출 클래스의 NSMutableArray에 저장하는 방법을 알고 싶습니다.반환하는 NSMutableArray 메서드에서 NSMutableArray로 전달하는 방법

은 효과적으로은

NSObject의 클래스는 반환 값과 방법을 가지고 모습입니다

- (NSMutableArray *)myMethod { 
    // do some stuff 

    return myMutableArray 
} 

나는 MyMethod라는 방법하지만 사용할 수 있도록 모든 초기화의 방법 복용량을 호출하는 클래스 나는

같은 것이

입니다 ...이 클래스의 MutableArray로 돌아 myMutableArray을 받으시는 방법의 uncertian입니다

때문에 나는이 순간에 노력하고 내가 경고를 '있는 NSMutableArray * __ 강력한'로 지정

호환되지 않는 포인터 유형에서 'TheNameOfTheNSObjectClass *'

어떤 도움을 주시면 감사하겠습니다을 얻고 무엇을 먹으 렴. 당신이 Baginator라는 클래스에 다음과 같은 방법이있는 경우

+0

더 많은 정보가 필요하다고 생각합니다. 당신은'TheNameOfTheNSObjectClass' (elide unreferenced methods)와'anotherMutableArray'의 선언을위한 인터페이스를 추가 할 수 있습니까? 또한 "NSMutableArray"로 무엇을 의미합니까? 반환 된 배열을 복사 하시겠습니까? 아니면 그냥 참조할까요? – CRD

+0

더 많은 코드를 게시해야합니다. ARC를 사용하고 있습니까? 이 두 NSMutableArray는 어떻게 정의되어 있습니까? – HackyStack

+1

첫 번째 단계는 프로그래밍, 특히 포인터, 객체 및 명령형 프로그램의 개념을 배우는 것이어야한다고 생각합니다. –

답변

2

:

- (NSMutableArray *) mutableDoggyBags; 

을 그리고 당신은 그 메소드를 호출 할 : 질문을 구문 분석

Baginator *b = [Baginator new]; 
NSMutableArray *bags; 

bags = [b mutableDoggyBags]; 

를, 그것은 동등한 같은 소리 mutableDoggyBags이 변경 가능한 배열이 아닌 다른 것을 반환하도록 선언되었습니다. 이 행이 할당에 오류가 발생하는 경우

특히, 그런 다음

anotherMutableArray = [myObjClass myMethod]; 

은 다음을 충족해야합니다 : 귀하의 경우

• `myMethod` is not returning the same type as the type of `anotherMutableArray`. 

, 그것으로 선언 myMethod 같은 소리 TheNameOfTheNSObjectClass의 인스턴스를 반환합니다. 예 :

- (TheNameOfTheNSObjectClass*) myMethod; 
+0

나는 당신이 처음에는 그것이 TheNameOfTheNSObjectClass를 돌려주고 있다고 풀었다. 나는 열어 둔 응용 프로그램을 닫은 다음 깨끗한 빌드로 청소했다. 세계 태권도 연맹 – HurkNburkS