質問

誰かが私にこれを説明できますか?私はこれを通してそれを理解しました チュートリアル これがテーブルとして知られていること。 aから来る c/C ++背景、誰かがこれがどのように機能するかを説明できますか(私は既存のLUAコードを理解しようとしています)?

config = {
  devices = {
    C56    = "/dev/ttyS2",
    ELTRA  = "/dev/ttyS3",
--  MICORE = "/dev/ttyS4",
    HID    = "/dev/ttyS1",

    KEYCARD = {
  --  [6] = { tty="/dev/ttyS1", speed=9600 },
      [7] = { tty="/dev/ttyS4", speed=9600 },
    },

  },
}

デバイステーブルで構成される構成テーブルですか、それからキーカードテーブルがありますか? LUAでC56とEltraと呼ばれるものは何ですか?彼らはフィールドですか?

役に立ちましたか?

解決

LUAのテーブルは、JavaScriptオブジェクトやPython辞書のような無型のマップです。テーブルは、1つの値(「デバイス」や6など)を別の値(「/dev/ttys2」など)に関連付けます。値は別のテーブルになる可能性があります。テーブルは、オブジェクト、マップ、および配列を作成するために使用されます。

あなたの例では、 config 変数参照テーブル。そのテーブルには、1つの要素「デバイス」があり、その値は別のテーブルです。そのテーブルには5つの要素があります。これらの要素のうち4つ(「C56」、「Eltra」、「Micore」、および「HID」)は、その値として文字列を持っています。 5番目の要素( "keycard")には、その値としてテーブルがあります。 それか テーブルには、値が他のテーブル(それぞれ2つの要素のそれぞれ)である2つの要素(6、7)があります。

他のヒント

その中に2つのサブテーブル、デバイスとキーカードがあります。これはデバイスのサブテーブルです。 LUAを使用してからしばらく経ちましたが、アクセスするために、たとえばEltraにアクセスするには、config.devices.eltraを入力し、config.devices.keycard [7]を入力する7キーカードにアクセスして、キーカードの速度で取得します。 、speed = config.devices.keycard [7] .Speedを実行できます

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top