投稿日 | : 2002/08/23(Fri) 10:35 |
投稿者 | : よねKEN |
Eメール | : |
URL | : |
タイトル | : Re: ステップオーバー、ステップアウト |
> ステップオーバーやステップアウトといったものを利用するときというものは、
> どんなときなのでしょうか?
・ステップオーバー
ステップインとほぼ一緒ですが、実行するステートメントが自作のプロシージャでもそのプロシージャの中には入りません。
例えば、以下のようなコードでa=10から実行する場合、ステップオーバーは3ステップで済みますが、
ステップインなら、funcプロシージャの中も1ステップずつ進むので、c=b+5を実行した時点では13ステップかかります。
Private Sub Command1_Click()
Dim a As Integer, b As Integer, c As Integer
a = 10
b = func(a)
c = b + 5
End Sub
Private Function func(ByVal a As Integer) As Integer
略 ' ステップ数10あるとします。
End Sub
この例で、funcプロシージャの詳細が不要なら、ステップオーバーの方がいいですよね。
クラスモジュールのデバッグをするときなんかは重宝します。
例えば、プロパティもプロシージャなので、ステップインだと、
自作クラス.Text = 10
のような処理もプロパティプロシージャに処理が移ります。
・ステップアウト
ステップ実行中に、呼出した先のプロシージャのコードからステップ実行をやめて、
呼出し元のコードの次の行からステップ実行を続行します。
あるプロシージャの途中まで実行して、もういいから次を実行するようなときに役立ちます。