Re: [問題] if 判斷大量狀態
※ 引述《BlazarArc (Midnight Sun)》之銘言:
: 語言:C或C++
: 問題(Question):
: 各位好,想請教關於在需要判斷狀態做不同動作
: 而狀態規模很大的情況下,是否有更好的寫法
: 問題的假設:這些選項無法獨立出來,所以變成有 2^選項 種狀態
: 每個狀態要做的事情可能有些相關有些非相關
: 需要判斷的狀態還是佔整體空間的少數,而剩下的都做預設的動作
一般正常的情況下
這些選項的判斷還是能夠化簡才對
我不知道你有沒有學過數位電路邏輯
裡面有一種卡諾圖
就是用來化簡boolean代數運算的
一般人可以手工畫圖處理的情況
適用於4個維度以下,也就是16格
更高以上的維度則需要用軟體幫忙
此外
應該會有許多選項是彼此無關的才對
那麼分開寫就好了
例如這樣:
if(bFlagA)
functionDoA();
if(bFlagB)
functionDoB();
根本就不需要放在一起
流水執行就好
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.210.62
推
03/11 21:11, , 1F
03/11 21:11, 1F
→
03/11 21:12, , 2F
03/11 21:12, 2F
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章