C++のポインターの話。
こんにちは。みなみんです。
目次
ポインター
ポインター
変数を宣言する際の変数の種類。
そして、外部から変数にアクセスするための手段。
int *x;
double *d;
変数の種類について
筆者が考える変数の種類は3種類あります。
- 値型変数
- 参照した変数の値をコピーして代入
- 参照変数
- 参照した変数の場所を指してその値を代入。(参照先に依存)
- アドレス変数
- 参照した変数の場所アドレスを代入。
ポインターの極意
ポインターは変数アドレスの変数
(ちょっと何言ってるかわかんない)
他の変数とポインターの互換
- ポインター変数と変数のアドレス
int x* <-> int &y
- ポインター変数と変数配列
int x* <-> int y[] //xはポインターの配列になる。
ポインターの使い道
筆者が考えるに、ポインターを使用する事によって可能な事を挙げます。
関数から変数を代入
関数によって変数の値を編集する事が可能。
任意の長さの配列を作成する
ポインター型変数なら、任意の長さを持つ配列を宣言、代入する事も可能になります。
配列の先頭要素を参照する
とりあえずnullを入れておく
現時点で参照する対象が無い場合にはnullptrやNULLとしておく事が可能。
占有しているメモリ領域を解放させる
任意のタイミングでメモリを解放するする事が可能。
主に、アプリケーションやゲームなどで使われるのでしょうか。
この記事に誤りがあるかもしれません。その辺はご了承ください。
本記事で紹介されている方法・手法はあくまでも個人的なものです。