2013-06-18 59 views
0

我創建了一個與Marmalade SDK中的示例類似的應用程序。然後,我嘗試將IwUIController派生類移動到單獨的文件.h/.cpp中,以稍微清理代碼,但每次嘗試訪問任何IwUIElement時都會發生崩潰?例如:Marmalade IwUIController在訪問IwUIElement對象時導致崩潰

CIwUIImage* image = IwSafeCast<CIwUIImage*>(pScreen->GetChildNamed("Image")); 

pScreen被聲明爲

static CIwUIElement *pScreen; 

,然後在main():pScreen = CIwUIElement :: CreateFromResource( 「屏幕」);

這些崩潰的原因是什麼? Controller類是否需要與main()在同一個文件中?我試圖調試,指針似乎正確傳遞。

+0

提供更多信息。崩潰時顯示什麼錯誤?它在設備上還是在果醬模擬器上崩潰?另外哪條線導致崩潰? – noob

回答

0

不知道它真正重要的一個答案,但我沒有足夠的信譽計算器評論顯然;-)

如果你有,直到你把它分成兩個文件的工作確定C++代碼,我會認真檢查新的兩個文件中的#include和其他聲明與原始文件中的相同。 10次​​中的9次,我的經驗是,出於某種原因,事情是不一樣的。實際上,值得檢查的一個特定問題是,結構或類只在一個文件中被部分聲明(例如前向聲明),並且已經失去其父項。

話雖如此,作爲創造者,說崩潰的症狀是什麼?這可能是IwSafeCast失敗的動態失敗嗎?