事前バインディングと実行時バインディングの違い

VB6,VBA,VBS,EXCEL,DOS,BAT,WSH,WORDの小技メモ

HTML/ CSS/ CGI-Perl/ JavaScript/ JavaApplet/ AccessUp/ Internet/ EnglishLearn/ ちゃいちゃん天使/ 天使メッセージ/ 飯田ワールド/ 結城ワールド/ プロフィール/ WEB相談室/ WEBアンテナ/ 燈明日記/ Perlノート/ 漢字起源/ yahoo

はじめに

本ページは、ウインドウズ系全般のティプスメモです。

そう、はじめはVB系のティプスメモだったのですが…いつの間にか、ウインドウズ系全般のティプスメモになってしまいました。

ちなみに、ティプス(Tips)とは、マニュアルに書かれていない技法や裏わざのことですが、本ページでは、私が経験してこれはと思ったノウハウのメモになっています。

尚、以下は本サイトの最新情報(ブログ)です。

それでは、本ページが何かのお役に立てれば幸いです。ごゆっくりご覧ください。

◆ 事前バインディングと実行時バインディングの違い

Dim xlsApp As Excel.Application '事前バインディング変数
Dim xlsApp As Object '実行時バインディング変数

事前バインディング変数とは、タイプライブラリを参照して、そのオブジェクトタイプ(型)で宣言する。

実行時バインディング変数とは、Object型で宣言する。

事前バインディングとは、オブジェクトタイプ(型)で宣言した時点でオブジェクトがバインドされる。

実行時バインディングとは、実行した時点でオブジェクトがバインドされる。

事前バインディング(アーリーバインディング)の変数を使うオブジェクトの参照の方が、実行時バインディング(レイトバインディング)の変数を使うオブジェクトの参照よりも処理が高速になる。

また、コーディング段階で、オブジェクトで使われているプロパティやメソッドの構文等が自動メンバ表示されて、誤りがあるとエラー表示される。

歴史的には、実行時バインディングの方が先で、後からの実行速度や自動メンバ表示の機能改善された事前バインディングの方を使うのが推奨される。

しかし、バインドするCOMのインターフェイスが変更される可能のある場合や一つのObject型変数を違うオブジェクトで使い回しするときなどは、実行時バインディングも使われる。

おわりに

以下のページには、すべてのTIPSがあります。もしよろしければ、どうぞ!

尚、ご感想、ご意見、誤字、脱字、間違い等がありましたら遠慮なくVB-TIPS掲示板へご指摘ください。

人のよいところをどんどん見つけよう