volatile被设计用来修饰被不同线程访问和修改的变量。如果不加入volatile,基本上会导致这样的结果:要么无法编写多线程程序,要么编译器失去大量优化的机会。但是为什么感觉C++弱化了volatile关键字?
http://blog.csdn.net/menuconfig/article/details/6935030