作者askaskaskask (问问问问问问问题)
看板C_and_CPP
标题[问题] 想请问一个程式的问题
时间Wed Mar 4 13:26:23 2009
就是我看到一个程式,可是不太懂它的意思
就是
if(a && !b -> c() )
这段大概是什麽意思,就是它的跑法,或判断是什麽意思,谢谢喔
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 163.22.18.83
1F:→ VictorTom:b -> c 左边那个 -> 和bc中间有空格吗@_@" 03/04 13:27
2F:→ VictorTom:没有的话, 就是如果a!=0, 而且 b的member func:c()的回 03/04 13:28
3F:→ VictorTom:值为0的话, 执行if为真时{}里的程式.... 03/04 13:28
4F:→ askaskaskask:谢谢你,我会好好仔细看一下,大感谢 03/04 13:35
5F:推 legendmtg:有没有空格没关系吧.... 03/04 13:39
6F:→ legendmtg:a == 0不执行if中述句 03/04 13:41
7F:→ legendmtg:a != 0 执行 b->c(); 回传0则执行if中述句 03/04 13:42
8F:→ MOONRAKER:原来 -> 是比 ! 先 evaluate 的。 @@ 03/04 14:35
9F:推 chrisdar:这方法以前板上谈过了 不建议这麽做 03/04 14:45
10F:→ MOONRAKER:满整人的 03/04 15:01
11F:→ stonehomelaa:这个不是很好的写法 乍看之下会以为b->c()一定会执行 03/04 15:15
12F:推 ledia:short-curcuit evaluation ..... 多写几行会清楚点 03/04 16:16
13F:→ MOONRAKER:这种写法可以保证一定shorthand吗?不是by compiler的啊 03/04 16:32
14F:推 ledia:不是 by compiler 03/04 17:11
15F:推 TroyLee:short-curcuit evaluation 这特性很常用耶... 03/04 17:24
16F:推 legnaleurc:如果没被overload的话... 03/04 17:52
17F:→ askaskaskask:谢谢大家的回答~~ 03/04 18:09
18F:推 VictorTom:对不起我又犯傻了, 不太习惯ptr -> memb空格分开这样Orz 03/04 18:14
19F:→ stonehomelaa:应该说没见过有人把它分开的... 03/04 18:45