[問題] if的簡潔版

作者: wu110011 (不下棋)   2015-12-20 01:31:21
if(a > b)
max1 = a;
else
max1 = b;
也可以寫成
max1 = (a>b) ?a:b;
但是簡化成一行的優點只是程式碼比較短而已嗎?
簡化後速度反而比較慢,而且不易閱讀,
真不曉得有這功能要幹嘛...
作者: fatrabitree (胖兔子)   2015-12-20 01:35:00
比較慢大概是沒開最佳化,不易閱讀是你看不習慣
作者: CaptainH (Cannon)   2015-12-20 01:39:00
井蛙之見
作者: CoNsTaR ((const *))   2015-12-20 01:55:00
用這個三元運送子代表一定會有else的部分吧
作者: chuegou (chuegou)   2015-12-20 02:14:00
速度比較慢?這一定有什麼誤會
作者: laladeer (laladeer)   2015-12-20 08:19:00
最佳化怎麼開啊?
作者: stupid0319 (徵女友)   2015-12-20 08:49:00
應該是WINAPI很需要這個功能因為winapi的參數太多,用if else會更難懂
作者: Killercat (殺人貓™)   2015-12-20 10:27:00
printf("%d", isDigit ? 0 : 1);像這種東西你用if-else會變得很壟長 而且要多宣告個intpython也有類似的東西 return True if a>b else False
作者: TobyH4cker (Toby (我要當好人))   2015-12-21 13:27:00
推樓上
作者: ah7675 (阿毛)   2015-12-22 20:55:00

Links booklink

Contact Us: admin [ a t ] ucptt.com