定数と参照型の宣言・&

スポンサーリンク
スポンサーリンク
ライフスタイル関連のコンテンツ
お金 | 仕事 | 勉強 | プライベート | 健康 |
プログラミング関連のコンテンツ
C言語/C++入門 | Ruby入門 | Python入門 | プログラミング全般

定数の宣言

スポンサーリンク

プログラム中で共通して、常に変わらない値を使用したい場合があります。
この場合、定数を用いるのですが、C++でも定数の宣言ができます。

const float TAX = 0.05;    // 消費税を定数宣言

定数を宣言する場合、定数名には、習慣として大文字で名前を付けることが多いです。
PHPでも、define関数で定数定義するときは、大文字にしますね。

C++の定数宣言では、宣言時に同時に初期化も行わなければなりません。
初期化後に・・・

TAX = 1.00;

などと定数を変更しようとしても、エラーになり変更できません。

assert文で配列要素の範囲外エラーを防ぐで、少しだけ紹介しましたが、整数の定数は、配列のサイズ(要素数)の定義に使えます。
逆に言えば、配列のサイズを変数で渡す場合は、constで定数宣言した変数でなければ、エラーとなってしまいます。

const int NUM = 20;   // 配列のサイズの最大要素数
float total[NUM];    // 配列定義

参照型の宣言

C++では、参照型の宣言も可能です。
参照型での宣言は、「&」という特別な文字を使用します。

#include 
int main() {
	int count = 20;
	int& other_count = count;	// 参照で変数初期化
	std::cout << count << "\n";	// 元の値
	other_count = 10;	// other_countを変更
	std::cout << other_count << "\n";
	std::cout << count << "\n";
	count = 30;		// countを変更
	std::cout << count << "\n";
	std::cout << other_count << "\n";
}

実行結果。

20
10
10
30
30

other_count、countは、参照として同じデータを指していますので、片方の値を変更すると、もう一方の値も変更される、ということを確認できます。

スポンサーリンク
 
スポンサーリンク