296

DimVisual Basic での略語は何ですか?

4

10 に答える 10

338

Dim はもともと (BASIC では) Dimension の略で、配列の次元を定義するために使用されていました。

( BASIC の元の実装はDartmouth BASICで、これは DIMENSION が綴られている FORTRAN から派生したものです。)

現在、Dim は配列だけでなく、任意の変数を定義するために使用されているため、その意味はもはや直感的ではありません。

于 2009-06-23T16:01:41.253 に答える
126

Dimそれに起因するさまざまな意味がありました。

「Declare In Memory」Dimの意味に関するリファレンスを見つけました。より関連性の高いリファレンスは、Siebel VB 言語リファレンスの一部として Oracle で公開されているDim ステートメントに関するドキュメントです。もちろん、メモリ内の変数を宣言しない場合、どこで宣言するのですか?と主張するかもしれません。使用方法を考えると、 「モジュールで宣言」が良い代替手段かもしれません。Dim

私の意見では、「Declare In Memory」は実際にはニーモニックであり、使い方を簡単に学べるように作成されていますDim。「Declare in Memory」は、現在のバージョンの言語で何をするかを説明しているので、より良い意味だと思いますが、それは適切な意味ではありません。

実際、Basic の起源では、Dim配列を宣言するためだけに使用されていました。通常の変数の場合、キーワードは使用されず、代わりに名前からタイプが推測されました。たとえば、変数の名前が で終わる場合、$それは文字列です (これは、たとえば VB6 までのメソッド名でも見られるものですMid$)。そのため、配列に次元Dimを与えるためだけに使用していました (配列のサイズが変更されることに注意してください)。ReDim


本当に、それは問題ですか?つまり、人工言語の中で意味を持つキーワードです。英語やその他の自然言語の単語である必要はありません。したがって、それはあなたが望むものを意味する可能性があり、重要なのはそれが機能することだけです.

とにかく、それは完全に真実ではありません。BASIC は私たちの文化の一部であるため、BASIC が現在の形になった理由を理解することは、私たちの世界観を改善するのに役立つことを願っています。


私は自分のコンピューターから座って、失われたように見える私たちの文化のこの小さな断片を保存する手助けをしたいという願望を持っています。そこで、1998 年版の現在の CD と古い CD の両方を MSDN で掘り下げました。また、古い QBasic [DOSBox を使用する必要があった] のドキュメントを検索し、Darthmouth のマニュアルを手に入れることができましたDim。残念なことに、彼らは何Dimの略かを語らず、それがどのように使われるかしか語っていません。

しかし、希望が薄れる前に、このBBC Microcomputer System Used Guide (1984 年のものであると主張しており、疑いたくありません) を見つけることができました。BBC マイクロコンピュータは、BBC BASIC と呼ばれる BASIC の変種を使用しており、ドキュメントで説明されています。Dimとはいえ、何の略かは書かれていませんが、次のように書かれています (104 ページ)。

... N$ のディメンションを指定して、必要な数のエントリを含めることができます。たとえば、DIM N$(1000) は、1000 個の異なる名前用のスペースを持つ文字列配列を作成します。

私が言ったように、それは次元を表しているとは言いませんが、その文書を書いている時点で、と関連付けることが一般的だったことをDim示す証拠として役立ちます.DimDimension

さて、後で(208ページで)やりがいのある驚きを得ました。DIMキーワードを説明するセクションのタイトル(注:内容には記載されていません)は次のように述べています。

配列の DIM 次元

したがって、「Dim は ... を表す」という引用は得られませんでしたが、これらの文書を読むことができるまともな人間であれば、それがDim次元を意味すると考えるのは明らかだと思います。


新たな希望を持って、私はどのようDimに選ばれたかについて検索することにしました. 繰り返しになりますが、この件に関する説明は見つかりませんでしたが、決定的な引用を見つけることができました。

配列を使用する前に、DIM (ディメンション) ステートメントで配列を定義する必要があります。

これは、 BASIC の共著者であるThomas Eugene Kurtzによって設立された会社である True BASIC inc の Web ページで、 True BASIC オンライン ユーザーズ ガイドの一部として見つけることができます。


つまり、実際には、Dimは の省略形でDIMENSIONあり、そうです。それは以前にFORTRANに存在していたので、パトリック・マクドナルドが彼の答えで言ったように、FORTRANの影響で選ばれた可能性があります.


Dim sum as string = "this is not a chinese meal" REM example usage in VB.NET ;)
于 2010-10-05T01:19:58.460 に答える
31

これは Dimension の略で、もともと BASIC で配列のサイズを指定するために使用されていたものです。

DIM — (次元の略) 配列のサイズを定義します

参照: http://en.wikipedia.org/wiki/Dartmouth_BASIC

元の BASIC コンパイラ ソース コードの一部。DIMコマンドを見つけるとジャンプする場所で、キーワードの元の意図が明確にわかります。

DIM    LDA XR01             BACK OFF OBJECT POINTER
       SUB N3
       STA RX01
       LDA L        2       GET VARIABLE TO BE DIMENSIONED
       STA 3
       LDA S        3
       CAB N36              CHECK FOR $ ARRAY
       BRU *+7              NOT $
       ...

参照: http://dtss.dartmouth.edu/scans/BASIC/BASIC%20Compiler.pdf

その後、変数の型を指定する機能が最近の実装で追加されたときに、すべての種類の変数を宣言するために使用されるようになりました。

于 2009-06-23T16:02:13.783 に答える
15

変数をディメンション化します。基本的に、ある時点でこのタイプの変数が必要になることをコンパイラーに伝えます。

于 2009-06-23T16:00:57.790 に答える
13

Dimension の略ですが、一般的には「Create Variable」または「Allocate Space for This」と読みます。

于 2009-06-23T16:02:54.047 に答える
10

変数宣言。最初は、「次元」の略でしたが、プログラミングでは (この特定のキーワード以外では) 重要な意味で使用される用語ではありませんでした。

http://in.answers.yahoo.com/question/index?qid=20090310095555AANmiAZ

于 2009-06-23T16:01:17.917 に答える
7

昔は、DIM は配列用にメモリを予約していました。メモリが限られているときは、メモリの使用方法に注意する必要がありました。私はかつて (1981 年に) 48Kb RAM を搭載した TRS-80 Model III で BASIC プログラムを書きました。DIMステートメントを変更して配列サイズを減らすまで、16Kb RAMを搭載した同様のマシンでは実行されません

于 2009-10-09T21:05:46.113 に答える
7

DIM は Declaration In Memory の略 DIM x As New Integer は、変数 x が格納されるメモリ内のスペースを作成します

于 2012-01-14T20:12:02.983 に答える
4

ディメンションの略。変数の一種です。この単語を使用して変数を設定していることを宣言 (または Visual Basic に "通知") します。

于 2012-04-07T08:30:29.403 に答える
3

Dim キーワードは、修飾子 (Public、Protected、Friend、Protected Friend、Private、Shared、Shadows、Static、ReadOnly など) と共に使用する場合はオプションです。例: -Static nTotal As Integer

参照型の場合、newキーワードを使用して、クラスまたは構造体の新しいインスタンスを作成する必要があります。例えばDim lblTop As New System.Windows.Forms.Label

Option Infer を Onに設定すると、データ型なしで Dim ステートメントを使用できます 。その場合、コンパイラは初期化式の型から変数のデータ型を推測します。例 :

Option Infer On

Module SampleMod

Sub Main()

 Dim nExpVar = 5

上記のステートメントは次と同等です- Dim nExpVar As Integer

于 2015-07-03T20:30:18.453 に答える