我是新來的iOS ,,我在下面的行如何解決EXC_BAD_ACCESS
nextscrn.fullTextValue=self.fulltextFromSecond;
這nextscrn對象以這種方式創建上面這一行有一個EXC_BAD_ACCESS
例外。
ImageVisible *nextscrn=[[ImageVisible alloc]initWithNibName:nil bundle:nil];
任何一個可以給我解釋一下究竟是什麼原因,我怎麼能解決這個問題。
感謝
我是新來的iOS ,,我在下面的行如何解決EXC_BAD_ACCESS
nextscrn.fullTextValue=self.fulltextFromSecond;
這nextscrn對象以這種方式創建上面這一行有一個EXC_BAD_ACCESS
例外。
ImageVisible *nextscrn=[[ImageVisible alloc]initWithNibName:nil bundle:nil];
任何一個可以給我解釋一下究竟是什麼原因,我怎麼能解決這個問題。
感謝
如果nextscrn.fullTextValue=self.fulltextFromSecond;
就是你得到的例外則幾乎可以肯定的nextscrn
或一個行。 self
被設置爲無效指針。
第一步是確定它是哪一個,然後找出它爲什麼會這樣。
確定問題的一種方法是使用調試工具(可能是最好的方法)。如果這是不可能的,你可以嘗試這樣的:
void *xyzzy = self.fulltextFromSecond;
,看看是否崩潰(我用void *
因爲我不知道什麼類型的self
是,但你可能要代替「真實」類型)。
如果發生這種情況,說明self
已損壞,但我認爲這種可能性最小。如果不是,請嘗試類似的方法nextscrn.fullTextValue
。
in nextscrn的fullTextValue我已經定義爲非原子,保留在self.fulltextFromSecond中也是非原子的,保留。兩者都是在dealloc方法中合成併發布的。這個 – iDia
@saj會是什麼原因,首先檢查他們的值,看看他們是否理智。並且請注意,這不僅是有意寫入可能導致錯誤值的變量。內存損壞可能會導致很多意想不到的原因,如緩衝區溢出。第一步(如我所說),找出哪一個是問題。 – paxdiablo