title: volatile vs. mutable in C++
body: <p>I have a question about the difference between volatile and mutable. I noticed that both of the two means that it could be changed. What else? Are they the same thing? What's the difference? Where are they applicable? Why the two ideas are proposed? How to use them in different way?</p>
  
  <p>Thanks a lot. </p>