作者DarkKiller (System hacked)
看板C_and_CPP
標題Re: [閒聊] 尋求比nest-if更優美的解決辦法
時間Mon Dec 6 23:12:52 2010
※ 引述《awashharp (AwA)》之銘言:
: 最近在寫一些網路server相關的程式,
: 為了要產生足夠詳盡的錯誤訊息給使用者,常常會發現用了很深的nest-if程式…
: 像是:
: if(data != NULL) {
: if(checkData(data) == 0) {
: if(modifyData(data) == 0) {
: if(fireDataChanged(data) == 0) {
: if(saveDataIntoFile(data) == 0) {
: printf("Finally succeed...");
: }
: else printf("Data storage failed.");
: }
: else printf("Observer call failed.");
: }
: else printf("Data modification failed.");
: }
: else printf("Data is invaild.");
: }
: else printf("Data not found.");
看了一下推文好像沒提到這種方法...
do {
if (...) {
...
break;
}
if (...) {
...
break;
}
...
} while (0);
不過有些功能比較強大的 library 可以作到 FSM?應該也可以達到你要做的
效果...
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.242.135.97
→ tropical72:FSM 是一種技巧而已,我也想知道有沒有人專門寫lib. 12/06 23:22
→ uranusjr:原 po 第一篇就有提到他不想用這個方法了 QQ 12/06 23:23
→ hilorrk:msm算不算 12/07 00:41
→ awashharp:感謝XD 其實要是處理更複雜一點的東西可以用這招啦XD 12/07 15:49