定数「Const」で宣言する意味はあるのでしょうか?

タグの編集
投稿者 ゼブノ  (中学生) 投稿日時 2011/3/29 11:42:04
Publicで宣言しても同じだと思うのですが……
投稿者 shu  (社会人) 投稿日時 2011/3/29 12:24:37
(1)
Public Const CONST_A as Integer = 123

Public intVarA as Integer = CONST_A


(2)
Public A as Integer = 123
Public intVarA as Integer = A


ということでしょうか?
(1)の場合だと変数用のメモリがintVarAの1つ分しかとられませんが
(2)の場合だと変数用のメモリがAとintVarAの2つ分とられてしまいます。

Constはある決まった値に名前をつけるために使用されます。Const宣言だけでは変数用のメモリは
確保されません。
投稿者 よねKEN  (社会人) 投稿日時 2011/3/29 12:37:25
大勢の人で一つのアプリケーション作る場合を考えてみてください。
誰かが宣言したAが変数だった場合と定数だった場合を。
値が変わることがないのにAが変数だったら、
ソースコードを読む人は、Aの使用されている箇所をすべてチェックしないと
Aの値がそのときどきでどんな値になるのかわかりません。

それに対してAが定数だったら、値が変わらないことを前提に
ソースコードを読むことができます。既存のプログラムを修正する場合に
このメリットは非常に大きいものです。

一人で開発している場合でも何ヶ月かたった後に
そのソースコードを読んで修正する場合のことを考えてみてください。





投稿者 とくま  (社会人) 投稿日時 2011/3/29 12:45:27
「変数」と比較しているのであれば、日本語が
違う時点で、意味に違いがあるということでは。

それぞれの意味は国語辞典で載っている
レベルで違いがあり、違いに意味があります。