※ 引述《ric2k1 (Ric)》之銘言:
: 建議可以:
: 1. 在建 BDD 時在 Gate 裡面存入對應的 BddNode
: 2. 要 reset bdd 首先 go through 所有的 Gate, reset BddNode = 0;
: (e.g. Circuit::resetBDD())
: 3. Call BddManager::reset() --- first _bddMap.clear(); then go through
: uniqueTable, delete all the BddNodeInt*; then call _uniqueTable.reset()
: and _computedTable.reset()
: Do I miss anything?
: - Ric
有一點點補充,根據我的心得
再清光所有BddNode時,很容易遺忘這兩個傢活
size_t nullNode = 0;
BddNode::_one = BddNode(nullNode);
BddNode::_zero = BddNode(nullNode);
因為把所有BddNodeInt清光後,萬一個這兩個沒清
就會掛掉
想起來之後,昨天那個MemMgr的問題不要而癒...(冏)
抱歉昨天問老師問題時一直搞錯方向...
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.240.36