static変数の初期化は?

解決


ともぞう  2003-11-20 22:05:57  No: 110091

お世話になっております。
VBをはじめて2週間ほどのものです。
static変数を使った時なのですが、数値型は自動的に0に初期化されるみたい
なのですが、意図的に初期化はできないのでしょうか?
意図的にできると便利かなと思います。
やり方がありましたら、よろしくお願いします。


特攻隊長まるるう  2003-11-21 03:10:02  No: 110092

static だと…何か変わるんでしょうか???
static じゃない変数は初期化しないの?
変数に自分の決めた初期値を代入したのではダメなの?
…質問の意味が分からない(  _)_
…ともぞうさんのいう初期化って何???


ともぞう  2003-11-21 04:17:18  No: 110093

C言語のstaticとは性質が全く違うのでしょうか?
関数内で
static unsigned char a = 0xff
のような感じで使用したいのですが?
見当違いでしたら、すいません。


ねろ  2003-11-21 05:29:01  No: 110094

Static a as Integer = 5
と出来ます。ただしVB.NETです。
VB6以前は残念ながら出来ません。
Cから引っ越されるんでしたらVB.NET
の方がお勧めかも。

>static だと…何か変わるんでしょうか???
違うんです。
たとえばVB6でファンクションの中で初期値を
設定しようとして
Static a as Integer
a = 7 
とやると毎回初期値が設定されてしまう。
始めの一回だけ初期値を設定仕様とすると
もう一つ Static n なんてやらなければならない。
 
Static a as Integer = 7
だと始めの一回だけ初期値設定が行われ、便利です。


ともぞう  2003-11-21 05:46:51  No: 110095

ねろさん、ありがとうございます。
残念ながら現在使用しているのはVB6です。
VB.NETのほうが、いろいろできるのですね。
VB.NETの使用を検討してみます。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加