关于编译器优化问题

学术版

System__Error @ 2024-11-29 17:38:23

假如我在代码中写类似这样的语句 A&&B,若 A 为假,编译器是否会进行优化不去计算 B 的真假?


by Limitless_lmw @ 2024-11-29 17:39:41

@System__Error

显然是的,比如你在单调队列里可以写 while(q.size()&&a[q.front()]<a[i]) q.pop_front();


by System__Error @ 2024-11-29 17:39:41

在写单调栈这个语句时 !st.empty()&&st.top()<x 发现不会RE,是否是因为这个原因?


by Limitless_lmw @ 2024-11-29 17:40:03

@System__Error

1


by System__Error @ 2024-11-29 17:40:27

@Limitless_lmw 谢谢


by Misserina @ 2024-11-29 17:43:43

@System__Error 1


by zhengbinkang @ 2024-11-29 17:49:01

短路原理


by yukimianyan @ 2024-11-29 18:54:53

就不是优不优化的问题,必须这么做


by 水星湖 @ 2024-11-30 00:09:59

@System__Error 这还不会?唐


|