const キーワードの位置
前にこんなメモを書いてたのを見つけた。
下の2つは同じ。
const type var = val;
type const var = val;
下の2つも同じ。この場合は、var が指示する先 (*var) が const になる。
const type * var = val;
type const * var = val;
以下は、上の2つとは違う。
type * const var = val;
この場合は、var 自体が const になる。なので、
var = &other_var;
はエラーだけど、
*var = new_val;
は、エラーじゃない。