ゲームが作れるようになるまでがんばる日記

ゲーム制作のことを中心にゲームに関することを書いています

ポインタのconst

Effectvie C++ 第1章3項
constについての項目。あいかわらずconstは苦手。バグを防ぐためにも値を変更しないばあいにはcosntを付ける癖をつけたい。
ポインタにconstを付けるときは位置によってポインタ自身がconstなのか参照している先のデータがconstなのか決まる。

char text[] = "test";

// ポインタ、データはconstでない
char* p = text;

// ポインタはconstでなく, データはconst
const char* p = text;

// ポインタはconstで, データはconstでない
char* const p = text;

// ポインタ、データはconst
const char* const p = text;

基本はconstが*の左にあるとデータがconst、constが*の右にあるとポインタがconst。