Trainz/AM&C/containers
| |||
|
|||
|
| 詞彙表 |
| HKeys-CM |
| HKeys-DVR |
| HKeys-SUR |
| HKeys-WIN |
| 滑鼠使用 |
| 符號 |
操作說明:點選正文中的腳註 ([2]) 或註釋標籤 ([note 12]) 會將您導航到(定位頁面)該條目的具體文字。 • 然後:在那裡點選?符號,將帶您回到您開始閱讀的地方。 |
在 計算機科學 (CS) 領域中,'容器' 是一種型別化的 變數,它可以儲存其他值。原始型別是語言的資料元素(與二進位制機器儲存型別相對應),它用於在容器(如陣列,一個索引列表容器,其中所有封閉的資料元素型別相同)中組合時定義更復雜的型別。'變數' 是一個關鍵字(符號引用),用作對內部型別的資料元素(無論它們是什麼型別)進行引用的'人為方便的控制代碼'。在一般計算機科學中,變數值可以更改和重新定義,而在 Trainz 中,某些關鍵字名稱是可變的,而資料由內容建立者 (CC) 在配置檔案中固定。
也就是說,在 Trainz 中,容器是列舉資料型別,它們充當關鍵字,後面跟著一對花括號 ({ 和 }) 將包含的資料封閉在內部,但某些 Trainz 列舉容器型別可能存在多個例項[1],因此在需要多個例項時,會在後面追加數字索引進行區分,例如(常見的特效容器)smoke0、smoke1、...、smokeii。
在最底層——機器依賴的地方:位元組由位元組組成,位元組由短字組成,短字由長字組成,(有時是短字和)長字可以加倍、四倍(x4)、五倍(x5)或捆綁成更大的位元組塊,由程式在機器程式碼級別對它們進行解釋,以便分配和定義型別。
上面的列表都是硬體可以管理的原始型別,將它們解釋和程式處理為語言的原始型別是編譯器編寫者的工作。當高階語言適應計算機體系結構時,它使用這些機器原始型別來定義它的語言特定資料元素或原始型別。其他更復雜的型別都是根據這些型別定義的。
應用程式依賴於這些型別定義,例如字元(此文字)、整數(沒有小數部分,請!)、浮點數 (小數 在 十進位制 中用 二進位制 表示——二進位制 或 機器形式)。這些計算機語言必然也必須具有匹配的原始型別,稱為 指標,用於描述所有這些原始型別的所有資料元素的 記憶體地址(或物理地址)。如果無法在 隨機訪問 操作中直接訪問該元素,則它不是一個離散元素,這使得它成為一個更大元素的一部分——一個包含其物理狀態的容器。
在 按位 算術中,整數通常與特定位相關聯,這些位具有相應的含義。這些被稱為標誌,並且與位掩碼一起經常用作分類(是此集合的一部分、滿足此條件、符合或不符合此測試),用於確定進一步的處理。這些是 YES-NO 或 TRUE-FALSE 評估,是 布林邏輯 的操作。
當資料原始型別需要成批處理時,使用容器型別。
- 字串是一個容器,包含的字元不應被視為數值資料,或者簡稱為文字;儘管文字的合法表示取決於文字的編碼方式(Unicode、ASCII、BOM 等)。
- 陣列是一個索引化的隨機訪問值組,是另一種型別的容器。型別陣列(整數、字串等)可以儲存每個匹配的原始型別的元素。在機器級別,陣列的開頭是一個地址('A'),該地址的值是第一個元素,它可以儲存該型別的值。下一個元素偏移了資料的長度(L)位元組 - 可以單獨定址(索引以進行隨機訪問)的最低資料形式 - 因此 (第一個元素的地址 + L) 或 (A + L) 給出了下一個元素的地址。這可以用索引或遊標變數 'I' 來寫,這樣第 N 個元素,當 I= (N-1) 時,可以透過 Ai = (A + L * I) 來定址,通常用 V[i] 表示,其中 V 是一個變數名。因此,陣列中的最大元素數為 N,因為 V[0] 必須是地址算術中的零偏移量,而 V[N] 是一個非法索引,因為它計算了記憶體中另一個未分配給陣列的位置的地址。因此,V[N-1] 是 N 個宣告的記憶體地址的最後一個元素,長度為 L 位元組。
- 矩陣
此頁面 正在建設中 這裡的內容可能在短時間內發生重大變化。所有擁有此主題知識的 Trainzer 和 Wikibookian 都歡迎參與。 您可以刪除此標籤並將其替換為 {{Trainz-stub}} 或使用節樁模板({{Trainz-sect-stub}}) 在“頁面”變得更加成熟時未完成的節上。 |
- 一個 資源 或 內容 是 作業系統 檔案系統上的一個檔案資料夾,包含其自身的自定義檔案,這些檔案隨後被整合到 Trainz 資料庫中,由 TrainzUtil 和 內容管理器 管理。大多數資源都需要元件部件或其他資源才能完全渲染數字模型,或執行時資源,如 Trainz 會話和 路線。
- 所有資源都包含一個標題或自定義檔案,Trainz 稱之為 config.txt,這是一個資源組織和引數宣告文字檔案,沒有它,資源的自定義將失敗,或者根據 spin N3V 對這個詞的扭曲,會產生 故障。
- 一個 .cdp 檔案 (或 .cdp2、.cdpa 變體)是另一個火車容器,是一個行動式壓縮資料集合,我們可以從其他 Trainzer、跨 Trainz 版本透過匯出和匯入獲得,以及從 DLS 上傳和下載的資料形式。
- Trainz 容器 是一種 列舉(定義和約束)複雜型別的資料結構,它可能包含標籤(通常是虛擬標籤)以及值或引用 (KUIDS) 以及 子容器容器。
- 它們通常包含可變長度(對 CC)的陣列宣告(乘客附件點 乘客引數),這些宣告用於分配實際記憶體和初始化值,這些值由同一結構中附帶的定義標籤或從父容器繼承的標籤進行修改。
- 在配置中哪些容器是合法的,取決於資源 KIND 標籤定義。
- 包含檔案 是計算機科學課程中的一種實現方式,在 Trainz 中透過 texture.txt 檔案 和引用來實現,這意味著列出元件 依賴項 的 KUID。Trainz 中的 texture.txt 檔案在 config.txt 宣告中令人困惑,它不能具有 .txt 副檔名,但必須以 .texture 副檔名結尾。
- 在 Trainz 層次結構中,KIND 是一個上層複雜型別,它隱式嵌入了必要的標籤。
- 也就是說,幾乎所有 KIND 定義都添加了一些標籤,這些標籤不在配置中巢狀在成對花括號內,這些花括號是通用 KIND 的特徵,再加上一個看起來像容器的元素。
- 這些是實際上的子容器,僅特定於該 KIND,而 Trainz 容器型別更通用,因此可以在一個 KIND 要求中宣告和使用。實際上,容器實際上是 KIND 的子容器,它們滿足多個資源自定義的更廣泛需求。
- 隱式巢狀由 KIND 標籤的宣告控制,因此不在其特殊子容器中的 KIND 標籤可以被正確處理。

