作者andylin79515 (Andy)
看板EE_DSnP
標題[問題] protected data member
時間Thu Dec 29 00:23:44 2011
剛剛寫 final project 遇到奇怪的問題,
我在 CirGate 的 class 內部 多加了 protected data member 後,
CirAigGate 內的 getIn0() 運作變得很奇怪,用 CirGate* 去改動 fanin
都會改失敗,用 print(自己在 CirAigGate 加的 function) 取出來的 _in0
跟 getIn0() (原本在 CirGate 內的 virtual function)的結果不同。
(註: _in0() 和 getIn0()() 取到的變成不一樣。)
但是一把 protected data 改回原本的版本,又變正常。有點怪怪的。
為了改fanin,我有在 CirAigGate 加了 void setIn0(size_t i) { _in0 = i; }
這個 function ,但是我想應該不是原因。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.244.226
※ 編輯: andylin79515 來自: 140.112.244.226 (12/29 00:25)
1F:→ djshen:getIn0不是回傳reference 所以直接改那個沒用吧? 12/29 00:25
2F:→ djshen:我好像看錯原PO的意思了@@ 12/29 00:26
※ 編輯: andylin79515 來自: 140.112.244.226 (12/29 00:28)
※ 編輯: andylin79515 來自: 140.112.244.226 (12/29 00:32)
3F:推 ric2k1:恩,等我一下... 12/29 00:49