2013-07-12 3 views
0

Appdelegate에서보기를 표시하기위한 일부 클래스를 가져오고 있습니다.이보기에서 일부 메소드 및 변수에 액세스하기 위해 동일한 AppDelegate를 가져와야하지만이 작업을 수행 할 때 필요합니다. 그것은 순환 수입 오류를 보여줍니다.Circular Import of ViewController

나는 @class에 의해 .h 파일로 가져 오기를 시도하고 .m 파일로 가져 왔습니다.

답변

3

두 클래스 모두에서 .h 파일에만 @class을 사용하고 .m 파일에 #import을 추가해야합니다. 이는 설명하는 문제에 대한 올바른 해결책입니다.

3 번째 클래스가 #import 일 수 있고 순환 링크를 만드는 또 다른 클래스 인 #import이 될 수 있기 때문에 원형도가 더 클 수 있습니다. 일반적으로 (수퍼 클래스의 경우 및 @protocol 구현 한 경우)을 제외하고는 .h 파일에서 @class을 사용해야합니다.

+0

@ 클래스를 사용해 보았습니다. h 파일을 가져올 때 .m 파일을 가져올 때 오류가 표시되기 시작합니다 ... –

+0

그래서 .m 파일에서 가져온 파일을 포함하여 .h 파일에서 다른 파일을 가져 오는 중 무엇을 봐야합니다. 일반적으로 파일을 가져 와서 가져 오기를 .m 파일로 이동하십시오. – Wain

+0

답변 해 주셔서 감사합니다. 이 클래스에서 하나의 가져 오기 만 사용하고 있습니다 ... 어떤 방식 으로든 컴파일러와 관련이 있습니까? 이 프로젝트에서 LLVM GCC 4.2 컴파일러를 사용하고 있습니다 ... –