[問題] 似乎是編譯最佳化?
最近看到一個code大致是這樣寫的
bool ret;
bool function(int n)
{
if(n >= 0)
return true;
return false;
}
int main()
{
cin >> n1;
ret = function(n1)
cin >> n2;
ret = ret && function(n2)
return 0;
}
發現說只要function(n1)回傳false, function(n2)連進去都不會進去
反之只要function(n2)回傳true, function(n2)才會被執行
只要把ret = ret && function(n2)寫成
ret = function(n2) && ret就不會有這個問題
第一個反應是覺得是編譯最佳化...
因為第一個ret如果是false那function(n2)在&&下就是冗員
但是也不太敢確定, 這部分都還給老師了XD....
有沒有相關的文章和書可以參考的....?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.234.125.42
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1435565033.A.2BF.html
推
06/29 16:09, , 1F
06/29 16:09, 1F
推
06/29 16:11, , 2F
06/29 16:11, 2F
→
06/29 16:18, , 3F
06/29 16:18, 3F
→
06/29 16:19, , 4F
06/29 16:19, 4F
→
06/29 16:22, , 5F
06/29 16:22, 5F
→
06/29 16:22, , 6F
06/29 16:22, 6F
→
06/29 16:25, , 7F
06/29 16:25, 7F
→
06/29 16:25, , 8F
06/29 16:25, 8F
→
06/29 16:25, , 9F
06/29 16:25, 9F
→
06/29 16:27, , 10F
06/29 16:27, 10F
→
06/29 16:28, , 11F
06/29 16:28, 11F
推
07/04 10:26, , 12F
07/04 10:26, 12F
→
07/04 20:42, , 13F
07/04 20:42, 13F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章