2011-03-24 179 views
1

我感到困惑的循環依賴。我有兩個.m文件,我需要在對方中使用這兩個文件。循環依賴

例如兩個文件Ah/Am和Bh/.m現在我必須將文件Ah/.m的變量存入Bh/.m,並將文件Bh/.m的變量存入Ah/.m I import啊進Bh和Bh進入啊但它給出了一個錯誤。

雅,我不希望使用委派文件!有沒有辦法做同樣沒有委託文件?

謝謝..

回答

2

你或許應該放在#imports在.m文件,而不是.H 您可能需要轉發聲明類,如果你引用它們在.H

+0

雅錯誤得到解決,但現在變量的值是空...變量是NSMutableArray裏那在Ah文件中聲明,我在Bm類中分配內存。我也試圖在分配文件時三十分內存但仍顯示空值.. – Maulik 2011-03-24 05:40:48

+0

+1 - 不是好事,有沒有給予好評的接受的答案。 – 2011-03-24 07:38:44

+0

@maulik我必須看到代碼才能理解它。也許開始一個新的問題,因爲我懷疑它是一個依賴問題了。 – 2011-03-24 12:25:59

2

What is the difference between @class and #import

@class用於避免循環依賴...這可以防止循環引用在一個頭A中導入第二個頭B,其中(B)導入導入第二個(B)的第一個(A)等等在無盡的循環中.... @類通常用於要求編譯器在runtim中查找它的定義è......特別是當它存在於一些靜態庫..

請看到這太

when and where to put @class declarations

+0

謝謝,但你能解釋更多?我必須做什麼? – Maulik 2011-03-24 05:37:21

+0

檢查此http://stackoverflow.com/questions/322597/class-vs-import – visakh7 2011-03-24 06:04:29

+0

亞錯誤得到解決,但現在變量的值爲空...該變量是在Ah文件中聲明的NSMutableArray,我分配內存在Bm類。我也嘗試在A.m文件中分配內存,但仍然顯示空值。 – Maulik 2011-03-24 06:31:31