個人財務 Visual Basicでのスコープの理解NET - ダミー

Visual Basicでのスコープの理解NET - ダミー

目次:

ビデオ: Visual Basic 入門:LINQとは|Lynda.com 日本版 2024

ビデオ: Visual Basic 入門:LINQとは|Lynda.com 日本版 2024
Anonim

VBに適用されます。 NETプログラムは、米国が州、郡、および都市に分かれるのと同様に、ゾーンに細分されています。法執行機関がさまざまな規模の管轄区域(市の警官、州の兵士、FBI、どこでも行くことができる)と同じように、VB。 NETのプログラミングの行には影響力の範囲があります。 スコープ と呼ばれるこの影響範囲は、主に変数に適用されます(ただし、プロシージャ(サブシステムと関数)およびクラス全体にも適用できます)。

<!変数へのアクセス

変数の値を照会または変更したいが、その変数があなたにアクセス可能かどうかは、そのスコープによって異なります。たとえば、同じプロシージャ内から常に変数にアクセスできます(関数、サブルーチン、およびイベントはすべてプロシージャです)。

このコードの動作を確認するには、コードモジュールに次のように入力します。

Private Sub Form1_Load(ByVal送信者としてSystemオブジェクト、ByVal e As System。EventArgs)MyBaseを処理します。ロード

Dim N As String = "This"

MsgBox(N)

End Sub

-

F5キーを押して、MsgBoxに変数Nの値を表示するのに問題がないことに注目してください。

Thisを表示します。

Public Sub TryIt()

MsgBox(N)

End Sub

変数Nの下に鋸歯状の線があることに注意してください。 TryItサブ。ノコギリ線とVBの上にマウスポインタを置いてください。 NETは、名前 'N'が宣言されていないことを示すエラーメッセージを表示します。

<! - 3 - >

このエラーメッセージは、TryItサブ(Public SubとEnd Subの間)のコード行が変数Nを読み取る(アクセスする)か書き込む(変更する)ことができないことを意味します。 Dimコマンド)を別のプロシージャで実行するので、N(そのアクセシビリティの範囲)のスコープは同じプロシージャ内のコード行に制限されます。

Dimが最も一般的に使用されますが、静的、公開、保護、フレンド、共有、保護されたフレンド、プライベートの7つの追加の宣言コマンドを使用できます。これらの追加のコマンドはスコープを指定します(プログラムのどこから変数にアクセスできるか)。

プロシージャ内で変数を宣言すると、そのプロシージャ内でのみ変数が機能することに注意してください。プログラムがプロシージャ(またはイベント)を実行すると、End Sub行が実行されるとすぐに、変数は有効になり、そのことを行い、その後消滅します(消えます)。

変数がローカルの場合

単一のプロシージャ内にのみ存在する変数を

ローカル変数と呼びます。 ローカル変数には、あなたが覚える必要のある2つの性質があります。 独自のプロシージャの外部にプログラミングすることは、値を読み取るか値を変更するためにそれらとやり取りできません。

  • そのスコープは、独自の手順に限定されています。 VBが存在するプロシージャの実行を終了すると、その値は蒸発する。そのプロシージャがもう一度実行されると、ローカル変数に含まれていた値はなくなります。手順の1つの実行は、その存続期間です。
  • ローカル変数の値を保持したい場合があります。このような場合、DimコマンドではなくStaticコマンドを使用します。 Private Sub Form1_Load(ByVal送信者としてシステムオブジェクト、ByVal eとしてシステム。EventArgs)MyBaseを処理します。この例では、End Subを実行すると、変数nはその値を失います。
  • ただし、変数xはプログラムが終了するまでその値を保持します。これを置くもう1つの方法は、ローカル変数でStaticコマンドを使用すると、その変数の値がアプリケーションの存続期間にわたって保持されます。 (ライフタイムとは、何かがプログラム内に存在する時間を意味します)。

2つのコマンドボタンをフォームに配置し、プログラムを実行してCommand1を最初にクリックしてCommand2をクリックすると、この次のプログラム?

Private Sub Button1_Click(System。。::。SystemとしてのByVal送信者。EventArgs)Button1を処理します。

Dim X As Integer

X = 12

X = X + 5

End Sub

Private Sub Button2_Click(ByVal送信者としてシステムオブジェクト、ByValシステムとしてのEventArgs)Button2を処理します。 。

Dim X As Integer

MsgBox(X)

End Sub

メッセージボックスには何も表示されません。 Command1のClickイベントの変数Xは、Command2のClickイベントのXとはまったく異なる変数です。彼らは範囲のローカルであり、単に相互に関係がありません。ブロンクスに住んで決して会うことのないマイクという名前の二人以上の人。

しかし、これらのプロシージャの両方で同じ変数にアクセスして操作できるようにするにはどうすればよいでしょうか?これを行うには、プロシージャの外で変数を定義します。それを試してみてください。コードウィンドウの最初のプロシージャ(Private Sub Form1_Load行のすぐ上)のすぐ上をクリックして、そこに挿入カーソルを移動します。

Dim x As Integer

これは、フォーム全体のスコープを指定したい変数、つまりそのフォーム内のすべてのプロシージャを許可する場所です(Form1 、この場合)変数を読み込んで変更することができます。 (VB.NETの前に一般宣言領域と呼ばれていたフォーム全体の変数を置く領域)

ここで、そのX変数はすべてのSubやその他のプロシージャの上に同じプログラムを実行し、Command1をクリックしてからCommand2をクリックすると、表示したい結果が表示されます.17を選択します。スコープ内でフォーム全体になるようにXを宣言すると、2つのボタンがその変数Xにアクセスできます。これらの2つのボタンイベント内でXを宣言した2つのDimステートメントを削除します。ここで、X = X + 5とMsgBox(X)は両方ともXという名前の同じ変数を参照します。

変数にはフォーム全体の有効範囲があり、その形式のすべてのプロシージャで使用できます。ただし、プロジェクトの他の形式の手順には使用できません。

Visual Basicでのスコープの理解NET - ダミー

エディタの選択

Drupalフォーラムの有効化 - ダミー

Drupalフォーラムの有効化 - ダミー

フォーラムはユーザーコミュニティを作成するのに最適です。人々は他者からの援助を得ることができ、あなたのコンテンツに関するフィードバックを提供し、単純に社会化することができます。あなたのDrupalフォーラムは、あなたが望むようにしっかりとまたはゆるやかに制御することができます。フォーラムで許可されているカテゴリを制御できます。フォーラムの例を見るには、Drupal Forumを参照してください。 ...

ドリューパルフレンドリーなウェブホスティング会社 - ダミー

ドリューパルフレンドリーなウェブホスティング会社 - ダミー

ウェブホスティング会社は、あなたがDrupalをインストールし、あなたのサイトをウェブ上に見えるようにするWebサーバー。一部の企業では、Drupalをインストールしたり、ワンクリックでインストールすることができます。あなたがDrupalのインストールをスキップする場合は、次のいずれかのアカウントを取得することを検討してください。

Drupalガーデンサイト構造管理 - ダミー

Drupalガーデンサイト構造管理 - ダミー

Drupal Garden Structureページでは、 、ページ、およびブロックを表示します。このページから制御できる特定の機能、ブロック、およびページには、連絡先フォーム、フォーラム、メーリングリストなどがあります。ブロックで表示される機能をブロックで管理することもできます。

エディタの選択

エグゼクティブとのデータマイニング - ダミー

エグゼクティブとのデータマイニング - ダミー

数字で遊ぶという楽しみのためにデータマイニングに取り掛からない。あなたは行動を望む。あなたは正しいことを見たいと思っています。データからの確かな証拠に基づいてビジネス上の決定を下すことが重要であることを理解しています。しかし、あなたは決定を下す権限を持つ人ではありません。だからあなたは...

ビッグデータガバナンスチャレンジ - ダミー

ビッグデータガバナンスチャレンジ - ダミー

データガバナンスは、大きなデータソースが彼らがどのように管理されているか。従来のデータウェアハウスやリレーショナルデータベース管理の世界では、データ保護の必要性に関するルールをよく理解している可能性があります。たとえば、医療界では、それは...

エディタの選択

エレクトロニクスコンポーネント:赤外線ライトダミーを作成する方法

エレクトロニクスコンポーネント:赤外線ライトダミーを作成する方法

赤外線を電気的に生成するには、赤外線スペクトルで動作する特殊な発光ダイオード(LED)を使用します。赤外線LED(しばしばIR LEDと呼ばれる)は、RadioShackまたは電子部品を販売する他の店で容易に入手できます。 IR LEDは、通常のLEDと似ていますが、光を見ることはできません。

デジタルエレクトロニクス:キット74のDOSコマンド - ダミーの

デジタルエレクトロニクス:キット74のDOSコマンド - ダミーの

を通して、あなたの電子プロジェクトを制御する場合パラレルポートであるKit 74 DOSソフトウェアは、コマンドプロンプトから実行できるRELAY、DELAY、WAITFORの3つのコマンドで構成されています。 RELAYコマンドRELAYコマンドは、1バイトのデータをパラレルポートに送信します。あなたから実行できること - RELAY、DELAY、およびWAITFOR - 8つの出力端子のそれぞれが...

デジタルエレクトロニクス:フリップフロップ回路の種類? - エレクトロニクスではダミー

デジタルエレクトロニクス:フリップフロップ回路の種類? - エレクトロニクスではダミー

、フリップフロップは特殊なタイプのゲートラッチ回路です。フリップフロップにはいくつかの異なるタイプがあります。フリップフロップの最も一般的なタイプは次のとおりです。SRフリップフロップ:SRラッチに似ています。 CLOCK入力に加えて、SRフリップフロップにはSETとRESETという2つの入力があります。 SET入力がHIGHの場合...