Pipe類與Instance類介紹

2021-06-26 15:04:45 字數 1383 閱讀 5957

pipe類與instance類介紹

章芝青 抽象類pipe,是所有pipe類的父類,這些類的作用就是將資料從一種形式轉成另一種形式。在特徵提取階段,pipe類是最常用的。

pipe類操縱instance類,instance類是描述資料的類,也是十分重要的乙個類。

每乙個instance包括四個預定義的域,分別是:"data", "target", "name", 和"source"。

"data" 儲存著每個例項的資料表示

"target" 是乙個與例項相關的標籤

"name" 是每個例項的短的可識別的名字,就像檔名

"source" 是可讀的原始檔資訊,就像初始的文字

每個域都沒有預定義的型別,而是隨著例項的處理在改變型別。舉個例子,data域剛開始可是是string型別,表示檔名,然後隨著pipe的類變成charsequence表示檔案的內容,最終變成特徵向量,而特徵向量則保留著按照字母表順序在檔案中的詞表。它隨著pipe類的處理變化著,最常見的是pipe類修改data域的值。

總的來說,有兩種使用instance的方式。(1)乙個例項通過pipe類來建立,並且通過pipe類及子類產生data/target/name/source域的值,這通常在訓練時做(2)例項產生原始的值在各個域中,然後不同的使用者,即各種pipe類呼叫newpipedcopy()方法產生各自的實力,這通常在測試效能是用。

如果鎖著的話,例項是不可改變的。而唯一可以改變例項四個域的值的是在pipes中。也就是說只有pipes類才能改變例項的值。

從instance的源**可以看出,類中只有屬性,以及get、set方法,還有iterator,write,read,shallowcopy以及構造器等方法,並不複雜,但十分重要。

pipe類將instance讀入,然後處理,然後輸出。其中最常被修改的是data域。pipe類常與instancelist類協做。instance加入到佇列中,然後依次通過pipe的處理,處理完又保留在list中。

fileiterator類通過在每個目錄中遍歷,將每個檔案建立乙個例項,將資料從檔案中放入instance的data域中。將檔案的目錄結構儲存到例項的target域中,因為要求檔案的組織按照類別標籤歸類。fileiterator將instance放入到instancelist中,而後者通過pipe來處理各個instance並儲存結果。

pipe類通常是層次性地組成。最典型的使用是serialpipe類。serialpipe類按照乙個預先排好順序的表將instance一步一步處理。通過serialpipe處理例項就像是處理例項通過乙個個子pipe類按照順序。

乙個pipe有兩個字母表,一張是資料域中的特徵表,另一張是目標域中的特徵表。

通過檢視pipe的原始檔,發現主要是構造器,getset字母表的方法,read,write,判斷方法,處理字幕表,查詢父節點,子節點等方法。

類值類與類指標類

類值類 行為像值的 class a a const a a ps new string a.ps i a.i 每個類物件有自己的乙份資源拷貝 a operator const a rhs a private string ps int i 一種優化拷貝賦值運算子的方法 copy and swap c...

類與類關係

表現為繼承或實現關係 is a 具體形式為類與類之間的繼承關係,介面與介面之間的繼承關係,類對介面的實現關係。指的是乙個類 稱為子類 子介面 繼承另外的乙個類 稱為父類 父介面 的功能,並可以增加它自己的新功能的能力,uml中實現用三角形箭頭和實線表示 指的乙個類實現介面 可以是多個 的功能,uml...

類模板與模板類

1.類模板與模板類的概念 什麼是類模板乙個類模板 也稱為類屬類或類生成類 允許使用者為類定義一種模式,使得類中的某些資料成員 默寫成員函式的引數 某些成員函式的返回值,能夠取任意型別 包括系統預定義的和使用者自定義的 如果乙個類中資料成員的資料型別不能確定,或者是某個成員函式的引數或返回值的型別不能...