简体   繁体   中英

How to disable return value optimization in Visual Studio 2010?

Is it possible to disable RVO (return value optimization) in Visual Studio 2010? Setting optimization flag to /Od (turns off all optimizations) doesn't help. In g++ there exists flag -fno-elide-constructors which disables RVO.

You cannot. It is just that simple. RVO/NRVO is Standard, and your code should not depend on it not being present.

Try to define your variable as volatile , maybe solves your problem. If it does not, you should send come code...

There is never any reason to disable this optimisation! What are you trying to achieve? It helps debug builds run faster without any bad side-effects at all. It also ensures code dependent on RVO or NRVO works identically in debug and release.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM