作者herbertcsh (A-bo)
看板EE_DSnP
標題Re: [問題] cirGateV
時間Sun Jan 15 22:12:05 2012
我在這裡卡關好久呢~只好上還求救
若是要將某個_in0設成const0
我寫成
_fanoutInfo[ id ][ i ]->getIn0().set( _const0, false);
類似這樣
但卻完全沒有辦法將_fanoutInfo[ id ][ i ]的_in0作修改
就是以上那一部作了等於沒做
為什麼呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.240.241.245
1F:→ djshen:他不是return reference.. 01/15 22:36
※ 編輯: herbertcsh 來自: 111.240.241.245 (01/15 22:42)
2F:推 anfranion:GateCirV in0 = _fanoutInfo[ id ][ i ]->getIn0() 01/15 23:32
3F:→ anfranion:in0->set(_const0, false); 01/15 23:32
4F:→ anfranion:_fanoutInfo[ id ][ i ]->setIn0(in0()); 01/15 23:32
5F:→ anfranion:第一行是因為他是return value 而非reference 01/15 23:33
6F:→ anfranion:所以你要進行修改的話基本上寫一個local var存比較好 01/15 23:34
7F:→ herbertcsh:我用setIn0就行了!但為什麼原本的不行呢? 01/15 23:34
8F:→ anfranion:然後第三行是老師奇妙的寫法... in0()會傳回GateV裡的 01/15 23:34
9F:→ anfranion:size_t _gateV 01/15 23:34
10F:→ anfranion:欸就是如一樓所說 他傳回來的你改他 也不是改到裏頭 01/15 23:35
11F:→ anfranion:的那個in0的gateV... 01/15 23:35
12F:→ herbertcsh:XD果然跟我擔心的一樣... 01/16 00:13