2011-04-11 144 views
2

我有一個在.h聲明的屬性作爲C函數和訪問目標C的實例變量

@property (nonatomic, assign) int timeSig_Numerator; 

和實例變量在.h作爲

int mTimeSig_Numerator; 
.m我合成

聲明與

@synthesize timeSig_Numerator = mTimeSig_Numerator; 

我有一個C函數聲明befo在重新合成,需要使用mTimeSig_Numerator。是什麼使實例變量可見我的C函數沒有把它當作一個函數參數的最佳方式?

回答

4

由於mTimeSig_Numerator是一個實例變量,類的每個實例都有自己的mTimeSig_Numerator。作爲一個C函數從任何給定的類/類實例脫鉤,它怎麼會知道從哪個實例應該獲得mTimeSig_Numerator

您的C函數需要或者包含特定實例的mTimeSig_Numerator的值的參數,或指向該實例本身的參數,或者告訴哪個特定實例/實例變量它應該使用函數一些其它機制。

+0

我明白了,我還沒有想過的C函數不是類的「部分」。謝謝。 – griotspeak 2011-04-11 02:49:00