Containers 套件是在應用程式物件模型中的一組範本與非範本類別實作關係(關聯與聚集)。
每一個儲存器類別都適合用於不同的關係屬性。
某些儲存器(例如,OMStack、OMQueue 和 OMHeap)無法用於關係實作。它們是用於架構的內部,同時也可以由用戶端應用程式直接使用。
OXF 儲存器類別為物件模型中的關係提供預設實作。IBM® Rational® Rhapsody® 程式碼產生器可以經過參數化以使用現成的儲存器程式庫(例如,RogueWave™、MFC 或 Standard Template Library (STL)),而不是使用其「原生」儲存器程式庫。產品本身直接支援具有 STL 儲存器的關係實作。
Rational Rhapsody 會使用儲存器在物件之間實作對多關係。這些關係包括一個物件對許多物件、或許多物件對許多物件的關係。Rational Rhapsody 會自動選取適當的儲存器,以根據對應關係、存取及相關類別與物件的順序來實作各種關係的行為。一般儲存器有清單、堆疊、資料堆、靜態陣列、集合與對映,其中每一種各有其本身的行為集。例如,陣列允許隨機存取,而清單則否。
OXF 支援下列儲存器類型:
- OMAbstractContainer -
一種抽象的安全類型儲存器。
- OMCollection -
一種安全類型且動態調整大小的陣列。如需相關資訊,請參閱OMCollection 類別。
- OMHeap -
一種安全類型且固定大小的資料堆實作。如需相關資訊,請參閱OMHeap 類別。
- OMIterator -
一種在 OMAbstractContainer(及衍生儲存器)上方的安全類型反覆運算子。
如需相關資訊,請參閱OMIterator 類別。
- OMList -
一種安全類型的鏈結清單。
如需相關資訊,請參閱OMListItem 類別。
- OMMap -
一種根據平衡二進位樹狀結構(log(n) 搜尋時間)的安全類型對映。如需相關資訊,請參閱OMMap 類別。
- OMQueue -
一種安全類型且動態調整大小的佇列。它實作於循環的陣列上,並實作先進先出 (first-in-first-out) 演算法。如需相關資訊,請參閱OMQueue 類別。
- OMString -
一種字串類別。如需相關資訊,請參閱OMString 類別。
- OMStack -
一種實作後進先出演算法的安全類型堆疊。如需相關資訊,請參閱OMStack 類別。
- OMStaticArray -
一種安全類型且固定大小的陣列。如需相關資訊,請參閱OMStaticArray 類別。
除以上儲存器之外,OXF 還支援 omu* 儲存器,這是不搭配範本一起實作的儲存器。使用不使用範本的儲存器會大幅減少所產生程式碼的大小。
OMU* 儲存器如下: