VBのByval、Byrefについて
どもVB初心者です。
VBでByval、Byrefという初めて聞く単語が出てきたので調べてみました。
Byval
値渡し。呼び出し先で値を変えても、呼び出し元には影響がない。
(メソッドの引数に、新たに値のコピーを作って渡す方法)
Sub Proc(ByVal tmp As String) tmp= "test" ''受け取った値を"test"に変える End Sub
Byref
参照渡し。呼び出し先で値を変えると、呼び出し元にも影響する。
(メソッドの引数に、変数そのものの参照を渡す方法)
Sub Proc(ByRef tmp As String) tmp= "test" ''受け取った値を"test"に変える End Sub
だいぶ初歩的な内容だった。。。
VBのEnumについて
どうも。VB初心者です。
最近VBの話の中でEnumっていうのが出てきたので調べてみました。
Enumとは
列挙体。列挙体を用いると関連のある一連の数値定数をひとまとめに扱うことができる。
変更する必要がない整数値をグループ化する時に使う。
Enumの値は整数値に限られる。
値を指定しない場合は、先頭が0となり、以降順に+1した値になる。
「=数値」で任意の値を設定することができる。
以下のようにして定義する。
Public Enum Washoku SUSHI ANKO UDON SOBA = 10 End Enum
上記は以下のような値になる。
SUSHI → 0
ANKO → 1
UDON → 2
SOBA → 10
もっと実用的にすると次のような使い方とか?
Public Enum 店番号 A = 1 B = 2 C = 3 End Enum
GetValuesメソッド
列挙体のメンバの値を配列で取得する。
GetNamesメソッド
列挙体のメンバの名前を配列で取得する。
VBの型について
VBの型について調べてみたので、そのメモです。
型名 | 説明 | サイズ |
---|---|---|
Boolean | ブール型。True、False。 | 2byte |
Byte | バイト型。0 ~ 255。 | 1byte |
Char | 文字型。1文字(Unicode)。 | 1byte |
Integer | 整数型。-2147483648 ~ 2147483647。 | 2byte |
Short | 短整数型。-32768 ~ 32767。 | 2byte |
Long | 長整数型。-2,147,483,648 ~ 2,147,483,647。 | 4byte |
Decimal | 10進型。 小数の桁数が0(整数)の場合(-79228162514264337593543950335 ~ 79228162514264337593543950335)。 小数の桁数が28桁の場合(-7.9228162514264337593543950335 ~ 7.9228162514264337593543950335)。 | 14byte |
Double | 倍精度浮動小数点型。 負の場合(-1.79769313486232E308 ~ -4.94065645841247E-324)。 正の場合(4.94065645841247E-324 ~1.79769313486232E308)。 | 4byte |
Single | 単精度浮動小数点数型。 負の場合(-3.402823E38 ~ -1.401298E-45)。 正の場合(1.401298E-45 ~ 3.402823E38)。 | 4byte |
Date | 日付型。0001年1月1日 0:00:00 ~ 9999年12月31 日 23:59:59 | 8byte |
Object | オブジェクト型。 | 4byte |