[問題] 命令列可順利執行,但GUI無法順利執行
這個程式是要用來當教學文章的範例
可是有個問題研究許久不知道改怎麼解決的問題
使用 Mac 10.5.8 與 Xcode 3.1.4
程式碼如下網頁(發展過程中檔案,非最終版本)
http://pydoing.blogspot.tw/2012/07/blog-post.html
利用 Interface Builder 建立的介面如第一張圖
有五個程式檔案
demo.m 是在命令列測試 Encrypt.h 與 Encrypt.m
GUI 則是用 EncryptController.h 與 EncryptController.m
程式均可順利編譯, demo.m 可以順利執行跑出結果
可是 GUI 在執行 - (IBAction) encode: (id)sender;
之時,無法順利執行,也就是說
GUI 執行 Encrypt 的 toEncode 發生錯誤
(彩球空轉,像是程式當掉,沒有錯誤訊息 >_<)
想請教前輩,這到底是什麼樣的錯誤?
或著說,從一開始我的設計方式就是錯的?
ps:
此程式的 Java 版本可參考
http://pydoing.blogspot.tw/2011/05/java-guide.html
--
半個月工作,半個月旅行,自由自在的生活
簡簡單單就好,不必想得太複雜.......
歡迎來到http://kaichingchang.blogspot.com/《旅人的足跡》
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.169.145.214
※ 編輯: monomorium 來自: 118.169.145.214 (07/15 22:16)
推
07/15 22:26, , 1F
07/15 22:26, 1F
→
07/15 22:28, , 2F
07/15 22:28, 2F
※ 編輯: monomorium 來自: 118.169.145.214 (07/15 22:33)
推
07/15 22:48, , 3F
07/15 22:48, 3F
推
07/15 22:51, , 4F
07/15 22:51, 4F
→
07/15 22:52, , 5F
07/15 22:52, 5F
我也覺得是無限迴圈,可是命令列又可以順利執行
※ 編輯: monomorium 來自: 118.169.145.214 (07/15 23:01)
推
07/16 00:11, , 6F
07/16 00:11, 6F
基本上 Debugger 視窗指出最後 EncryptController.m 執行停在
NSString *other = [encrypt toEncode: inputText];
也就是 Encrypt.m 的
r = [r stringByAppendingString: [cArray objectAtIndex: ct - 97]];
這跟反覆測試後,預測錯誤發生點是一樣的
至於 Breakpoints 視窗,沒有提示訊息,目前還不太懂作用說 xd
推
07/16 14:19, , 7F
07/16 14:19, 7F
→
07/16 14:19, , 8F
07/16 14:19, 8F
→
07/16 14:21, , 9F
07/16 14:21, 9F
我把 setArray 修改成
- (void) setArray {
oArray = [[NSArray alloc] initWithObjects:
@"a", @"b", @"c", @"d", @"e", @"f", @"g",
@"h", @"i", @"j", @"k", @"l", @"m", @"n",
@"o", @"p", @"q", @"r", @"s", @"t", @"w",
@"v", @"u", @"x", @"y", @"z", nil];
cArray = [[NSMutableArray alloc] initWithCapacity: 26];
int i, d, ci, count, m;
for (i = 0, count = self.c;i < n;i++) {
ci = count;
d = ci * self.a + self.b;
m = d % self.n;
[cArray addObject: [oArray objectAtIndex: m]];
count++;
}
}
成功跑出結果了,感謝各位 :)
※ 編輯: monomorium 來自: 118.169.133.163 (07/16 15:04)
※ 編輯: monomorium 來自: 118.169.133.163 (07/16 15:53)
※ 編輯: monomorium 來自: 118.169.133.163 (07/16 15:59)
推
07/16 17:04, , 10F
07/16 17:04, 10F
推
07/20 13:26, , 11F
07/20 13:26, 11F
arc 好像是 xcode 4.2 以後才能用
這裡有個問題,在 autorelease pool 中有需要 release 嗎
還是 autorelease 就可以了?
或是連 autorelease 也不需要?
另外一個問題是,嗯,我改回不用 alloc 突然也可以用了 xd
※ 編輯: monomorium 來自: 118.169.142.117 (07/20 14:38)
推
07/20 23:49, , 12F
07/20 23:49, 12F
MacDev 近期熱門文章
PTT數位生活區 即時熱門文章
-3
9