忍者ブログ
淡々とお仕事のお勉強をするよ
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

VB クラスの使い方 ~ 名前空間、共有メンバ、非共有メンバ、インスタンシングまで読んだ。

  • And, Or は AndAlso, OrElse と異なり判定後も条件式の処理が続く
  • C と異なり、Select Case 文の Case 節からは break 無しで離脱する
  • IsNothing 関数を使うと出る警告ってどんなんだろ
PR

VB 条件判断 ~ If, Select Caseの基本的な使い方まで読む。

博士: リスト7にはButton1_ClickプロシージャとForm1_Loadプロシージャがあ るがプロシージャには順番がないのじゃから、Form1_Loadプロシージャより前にButton1_Clickプロシージャ を書いても良いぞ。

え ? と思って調べてみた。まずは MSDN から。

Function ステートメント (Visual Basic)

Visual Basic では、演算効率を高めるために数式が自動的に並べ替えられることがあります。このため、変数の値を変えてしまうような Function プロシージャを数式の中で実行しないようにしてください。

Sub ステートメント (Visual Basic)

そのため、他のプロシージャを呼び出す式が引数リストに複数含まれている場合は、それらが特定の順序で呼び出されるとは限りません。

うーん、これはプロシージャじゃなくて計算式の話か。コンパイル用語的にはプロシージャも式として還元できると思うけど、ここでいう計算式は数値計算のことを指しているようにしか見えない。ちょっと探している情報とは違うような気がする。

vb1

イベントドリブンのアプリケーションでは、アプリケーションで定義されている順番ではなく、発生するイベントに応じてコードが実行されます。イベントには、ユーザーの操作によって発生するもの、システムやほかのアプリケーションからのメッセージによって発生するもの、または使用中のアプリケーションから発生するものがあります。実行されるコードの順番は、イベントの発生する順序になります。したがって、アプリケーションのコードが実行される順番は、そのプログラムを実行するたびに同じにはなりません。

なんだ、イベントドリブンのことだったか。基本的に、処理の実行順が決まっていなければならないようなアプリケーションには向いていないということみたい。イベントの捕捉についてはイベントの発生とイベントへの応答に詳しく書いてあるようだ。
実際の開発ではコンパイラの最適化の方に悩まされそう。

VBコンパイラの最適化により挙動が異なる - Insider.NET
/optimize

Random クラス (System)をチェック。

Random クラスの現在の実装は、Donald E. Knuth の乱数ジェネレータ減算アルゴリズムに基づいています。詳細については、D. E. Knuth 著『The Art of Computer Programming, volume 2: Seminumerical Algorithms』(第 2 版、1981 年 Addision-Wesley, Reading, MA 出版) を参照してください。

へー。

全然クラスそのものにタッチしないことしか書いてないけど、Visual Studio を使って書くのが標準で、コードスニペットやインテリセンスどころかメニューから部品を選択の世界なのでしょうがない。また実際に書き始めれば違うのかもしれないが。

Visual Basic での構造化例外処理

VB メソッドと関数まで。

  • On Error Resume Next でエラー抑制
  • Random.Next メソッドは変数にセットして使う

せっかくだからこんなときは MSDN に聞いてみよう。
On Error ステートメント (Visual Basic)

可能な場合には、構造化されていない例外処理と On Error ステートメントに頼るよりも、構造化例外処理を使用することをお勧めします。詳細については、「Visual Basic での構造化例外処理」を参照してください。

だそうだ。
エラー処理ルーチンは、行番号か行ラベルでセクションを指定する。Sub・Function プロシージャは使えない。

Resume Next

ランタイム エラーが発生すると、エラーが発生したステートメントの直後のステートメントに制御が移り、そのステートメントから実行が継続されます。オブジェクトにアクセスするときは、On Error GoTo ではなくこの形式を使用します。

Resume ステートメント
Next (省略可能) あるいは行番号を指定。
長くなったので Random と構造化例外処理については別エントリで。

VB 絵を書くまで。

  • VB 2005 のフォームデザイナで生成されたコードは別ファイルに記述される (通常は非表示)
  • 背景色を変えると DrawLine メソッドで描いた線は表示されなくなる。

開発環境が無いのであまりはかばかしくないんだけど、第7回まで読んだ。

  • オブジェクトを作ったら Name プロパティをすぐ設定しておいた方がよい。後で変更した際に機械的に変更してくれるが、完璧とは限らない
  • 日付型は # で囲んで指定
忍者ブログ [PR]


Designed by A.com
カレンダー
04 2024/05 06
S M T W T F S
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
フリーエリア
最新TB
バーコード
ブログ内検索
アクセス解析
プロフィール
HN:
tnmt
性別:
非公開
(image created by E-Mail Icon Generator)