我在一次应聘笔试时遇到一道题,问:你是否在项目开发中有用到volatile关键字,如果有那又是什么作用?
其实我只是在之前看过书上写这是用于告诉编译器该变量在编译过程中需要进行优化。
这感觉上听起来不太清楚明了,我不懂其中道理,什么优化啊?
然后我看了书,书里简单说了一下,还能理解,就是一个变量它的值可能会发生变化,若用以写逻辑判断表达式,条件表达式中使用了这个变量,但它执行部分的代码是一样的,然而属于分支语句,我们就要告诉编译器这两段一样的代码块都要进行分开独立的编译,不能合起来一起编译,不然代码的逻辑会出现变化,程序执行结果就会跟预想结果不一样。