ジェネリックデータコレクション

 

ICollection<T>

ICollection<T>はジェネリックデータコレクションを実装するためのインターフェイスです。

説明

ICollection<T>インターフェイスは、要素数をカウントするメソッド、コレクションをクリアするメソッド、要素を追加または削除するメソッドなどのコレクションを処理するための基本的なメソッドを提供します。

Declaration

  template<typename T>
interface ICollection

ヘッダ

  #include <Generic\Interfaces\ICollection.mqh>

継承階層

  ICollection

直系子孫

CLinkedList, CQueue, CRedBlackTree, CStack, IList, IMap, ISet

クラスメソッド

メソッド

説明

Add

コレクションに要素を追加します。

kaCount

コレクションの要素数を返します。

Contains

コレクションに指定された値を持つ要素が含まれているかどうかを判断します。

CopyTo

コレクションのすべての要素を、指定された配列に指定されたインデックスから開始してコピーします。

Clear

コレクションからすべての要素を削除します。

Remove

コレクションから指定された要素の最初のオカレンスを削除します。

IEqualityComparable<T>

IEqualityComparable<T>は比較可能なオブジェクトを実装するためのインターフェイスです。

説明

The IEqualityComparable<T>インターフェイスは、現在のオブジェクトのハッシュコードを取得し、同じ型の別のオブジェクトと等しいかどうかをチェックするメソッドを定義します。

Declaration

  template<typename T>
interface IEqualityComparable

ヘッダ

  #include <Generic\Interfaces\IEqualityComparable.mqh>

継承階層

  IEqualityComparable

直系子孫

IComparable

クラスメソッド

メソッド

説明

Equals

現在のオブジェクトを指定された値と比較します。

HashCode

現在のオブジェクトのハッシュコード値を計算します。

IComparable<T>

IComparable<T>は「より大きい、より小さい、等しい」によって比較可能なオブジェクトを実装するためのインタフェースです。

説明

IComparable<T>インタフェースは、現在のオブジェクトを同じ型の別のオブジェクトと比較するメソッドを定義します。これらのオブジェクトのコレクションはこれを基にしてソートできます。

Declaration

  template<typename T>
interface IComparable : public IEqualityComparable<T>

ヘッダ

  #include <Generic\Interfaces\IComparable.mqh>

継承階層

  IEqualityComparable

      IComparable

直系子孫

CKeyValuePair

クラスメソッド

メソッド

説明

Compare

現在のオブジェクトを指定された値と比較します。

IComparer<T>

IComparer<T>はT型の2つのオブジェクトをそのうち1つがあと1つと比べて「より大きい、より小さい、等しい」で比較するジェネリッククラスを実装するためのインタフェースです。

説明

The IComparer<T>インターフェイスは、T型の2つのオブジェクトを比較するメソッドを決定します。これらのオブジェクトのコレクションはこれを基にしてソートできます。

Declaration

  template<typename T>
interface IComparer

ヘッダ

  #include <Generic\Interfaces\IComparer.mqh>

継承階層

  IComparer

直系子孫

CDefaultComparer

クラスメソッド

メソッド

説明

Compare

T型の2つの値を比較します。

IEqualityComparer<T>

IEqualityComparer<T>はT型の2つのオブジェクトを比較するジェネリッククラスを実装するためのインタフェースです。

説明

IEqualityComparer<T>インタフェースは、T型オブジェクトのハッシュコードを取得し、T型の2つのオブジェクトが等しいかどうかを確認するメソッドを定義します。

Declaration

  template<typename T>
interface IEqualityComparer

ヘッダ

  #include <Generic\Interfaces\IEqualityComparer.mqh>

継承階層

  IEqualityComparer

直系子孫

CDefaultEqualityComparer

クラスメソッド

メソッド

説明

Equals

T型の2つの値を比較します。

HashCode

T型オブジェクトに基づいてハッシュコード値を計算します。

IList<T>

IList<T>はジェネリックデータリストを実装するためのインターフェイスです。

説明

IList<T>インターフェースは、インデックスによる要素へのアクセス、要素の検索や削除、ソートなどのリストを操作するための基本的なメソッドを定義します。

Declaration

  template<typename T>
interface IList : public ICollection<T>

ヘッダ

  #include <Generic\Interfaces\IList.mqh>

継承階層

  ICollection

      IList

直系子孫

CArrayList

クラスメソッド

メソッド

説明

TryGetValue

指定されたインデックスにあるリスト要素の値を設定します。

TrySetValue

指定されたインデックスにあるリスト要素の値を変更します。

Insert

リストに指定されたインデックスで要素を挿入します。

IndexOf

リストで値が最初に出現した位置を検索します。

LastIndexOf

リストで値が最後に出現した位置を検索します。

RemoveAt

指定されたインデックスにあるリスト要素を削除します。

IMap<TKey, TValue>

IMap<TKey, TValue>はキー/値ペアのジェネリックコレクションを実装するためのインターフェイスです。

説明

IMap<TKey, TValue> interface defines basic methods to work with collections whose data are stored as key/value pairs.

Declaration

  template<typename TKey, typename TValue>
interface IMap : public ICollection<TKey>

ヘッダ

  #include <Generic\Interfaces\IMap.mqh>

継承階層

  ICollection

      IMap

直系子孫

CHashMap, CSortedMap

クラスメソッド

メソッド

説明

Add

コレクションにキー/値ペアを追加します。

Contains

コレクションに指定されたキーを持つキー/値のペアが含まれているかどうかを判断します。

Remove

コレクションから指定されたキー/値ペアの最初のオカレンスを削除します。

TryGetValue

コレクションから指定されたキーを持つ要素を取得します。

TrySetValue

コレクションの指定されたキーでのキー/値ペアの値を変更します。

CopyTo

コレクションのすべてのキー/値ペアを指定された配列に、指定されたインデックスから開始してコピーします。

ISet<T>

ISet<T>はジェネリックデータセットを実装するためのインターフェイスです。

説明

ISetインターフェイスは、集合の組合や交差、厳密なおよび非厳密な下位集合の定義などの集合を扱うための基本的なメソッドを定義します。

Declaration

  template<typename T>
interface ISet : public ICollection<T>

ヘッダ

  #include <Generic\Interfaces\ISet.mqh>

継承階層

  ICollection

      ISet

直系子孫

CHashSet, CSortedSet

クラスメソッド

メソッド

説明

ExceptWith

現在のコレクションと渡されたコレクション(配列)の差集合操作を生成します。

IntersectWith

現在のコレクションと渡されたコレクション(配列)の共通集合操作を生成します。

SymmetricExceptWith

現在の集合と指定されたコレクション(配列)の対称差集合操作を生成します。

UnionWith

現在の集合と指定されたコレクションまたは配列の和集合操作を生成します。

IsProperSubsetOf

現在の集合が指定されたコレクションまたは配列の真下位集合であるかどうかを判断します。

IsProperSupersetOf

現在の集合が指定されたコレクションまたは配列の真上位集合であるかどうかを判断します。

IsSubsetOf

現在の集合が指定されたコレクションまたは配列の下位集合であるかどうかを判断します。

IsSupersetOf

現在の集合が指定されたコレクションまたは配列の上位集合であるかどうかを判断します。

Overlaps

現在の集合が指定されたコレクションまたは配列と重複するかどうかを判断します。

SetEquals

現在の集合が指定されたコレクションまたは配列のすべての要素を含んでいるかどうかを判断します。

CDefaultComparer<T>

CDefaultComparer<T>はCompareグローバルメソッドに基づいてIComparer<T>ジェネリックインターフェイスを実装するヘルパークラスです。

説明

The CDefaultComparer<T>クラスは、ユーザがIComparer<T>インタフェースを実装する別のクラスを暗黙的に使用していない限り、デフォルトでジェネリックデータコレクションで使用されます。

Declaration

  template<typename T>
class CDefaultComparer : public IComparer<T>

ヘッダ

  #include <Generic\Internal\DefaultComparer.mqh>

継承階層

  IComparer

      CDefaultComparer

クラスメソッド

メソッド

説明

Compare

T型の2つの値を比較します。

CDefaultEqualityComparer<T>

CDefaultEqualityComparer<T>はEquals<T>およびGetHashCodeグローバルメソッドを使用して IEqualityComparer<T>ジェネリックインターフェイスを実装するヘルパークラスです。

説明

The CDefaultEqualityComparer<T>クラスは、ユーザがIEqualityComparer<T>インタフェースを実装する別のクラスを暗黙的に使用していない限り、デフォルトでジェネリックデータコレクションで使用されます。

Declaration

  template<typename T>
class CDefaultEqualityComparer : public IEqualityComparer<T>

ヘッダ

  #include <Generic\Internal\DefaultEqualityComparer.mqh>

継承階層

  IEqualityComparer

      CDefaultEqualityComparer

クラスメソッド

メソッド

説明

Equals

T型の2つの値を比較します。

HashCode

T型オブジェクトに基づいてハッシュコード値を計算します。

CRedBlackTreeNode<T>

CRedBlackTreeNode<T>はCRedBlackTree<T>クラスを実装するためのヘルパークラスです。

説明

CRedBlackTreeNode<T>クラスはCRedBlackTree<T>のノードです。ツリーナビゲーションメソッドは、このクラスで実装されています。

Declaration

  template<typename T>
class CRedBlackTreeNode

ヘッダ

  #include <Generic\RedBlackTree.mqh>

クラスメソッド

メソッド

説明

ノード値を返します/設定します。

Parent

親ノードへのポインタを返します/設定します。

Left

左ノードへのポインタを返します/設定します。

Right

右ノードへのポインタを返します/設定します。

Color

ノードの色を返します/設定します。

IsLeaf

ノードが葉であるかどうかを判断します。

CreateEmptyNode

親や子を持たない新しい黒ノードを作成し、そのポインタを返します。

CLinkedListNode<T>

CLinkedListNode<T>はCLinkedListNode<T>クラスを実装するためのヘルパークラスです。

説明

CLinkedListNode<T>クラスは、二重連結リストのノードCLinkedListNode<T>です。リストナビゲーションメソッドは、このクラスで実装されています。

Declaration

  template<typename T>
class CLinkedListNode

ヘッダ

  #include <Generic\LinkedList.mqh>

クラスメソッド

メソッド

説明

List

CLinkedList<T>へのポインタを返します/設定します。

Next

次のノードへのポインタを返します/設定します。

Previous

前のノードへのポインタを返します/設定します。

ノード値を返します/設定します。

CKeyValuePair<TKey, TValue>

CKeyValuePair<TKey,TValue>クラスはキー/値ペアを実装します。

説明

CKeyValuePair<TKey,TValue>クラスは、キーとキー/値のペアの値を操作するためのメソッドを実装します。

Declaration

  template<typename TKey, typename TValue>
class CKeyValuePair : public IComparable<CKeyValuePair<TKey,TValue>*>

ヘッダ

  #include <Generic\HashMap.mqh>

継承階層

  IEqualityComparable

      IComparable

          CKeyValuePair

クラスメソッド

メソッド

説明

Key

キー/値ペアのキーを取得/設定します。

キー/値ペアの値を取得/設定します。

Clone

キー/値ペアが現在のものと等しい新しいキー/値ペアを作成します。

Compare

現在のキー/値ペアを指定されたものと比較します。

Equals

現在のキー/値ペアが指定されたものと等しいかどうかをチェックします。

HashCode

キー/値ペアに基づいてハッシュコード値を計算します。

CArrayList<T>

CArrayList<T>はIList<T>インターフェイスを実装するジェネリッククラスです。

説明

CArrayList<T>クラスは、T型の動的データリストの実装です。このクラスは、インデックスで要素にアクセスする、要素を検索および削除する、ソートするなどのリストを操作するための基本的なメソッドを提供します。

Declaration

  template<typename T>
class CArrayList : public IList<T>

ヘッダ

  #include <Generic\ArrayList.mqh>

継承階層

  ICollection

      IList

          CArrayList

クラスメソッド

メソッド

説明

Capacity

リストの現在の容量を取得および設定します。

kaCount

リストの要素数を返します。

Contains

リストに指定された値を持つ要素が含まれているかどうかを判断します。

TrimExcess

リストの容量を実際の要素数に設定します。

TryGetValue

リストの指定されたインデックスにある要素を取得します。

TrySetValue

指定されたインデックスにあるリスト要素の値を設定します。

Add

リストに要素を追加します。

AddRange

コレクションまたは要素の配列をリストに追加します。

Insert

リストに指定されたインデックスで要素を挿入します。

InsertRange

リストに指定されたインデックスで要素のコレクションまたは配列を挿入します。

CopyTo

リストのすべての要素を、指定された配列に指定されたインデックスから開始してコピーします。

BinarySearch

指定された値を昇順ソートリストで検索します。

IndexOf

リストで値が最初に出現した位置を検索します。

LastIndexOf

リストで値が最後に出現した位置を検索します。

Clear

コレクションからすべての要素を削除します。

Remove

リストから指定された要素の最初のオカレンスを削除します。

RemoveAt

リストの指定されたインデックスから要素を削除します。

RemoveRange

リストから要素の範囲を削除します。

リバース。

リストの要素の順序を逆にします。

Sort

リスト内の要素をソートします。

CHashMap<TKey, TValue>

CHashMap<TKey, TValue>はIMap<TKey, TValue>インターフェイスを実装するジェネリッククラスです。

説明

CHashMap<TKey, TValue>クラスは、データがソートされず、キーの一意性要件を考慮してキー/値ペアのとして格納される動的ハッシュテーブルの実装です。このクラスは、キーで値にアクセスし、キー/値ペアを検索して削除するなどのハッシュテーブルを操作するための基本的なメソッドを提供します。

Declaration

  template<typename TKey, typename TValue>
class CHashMap : public IMap<TKey, TValue>

ヘッダ

  #include <Generic\HashMap.mqh>

継承階層

  ICollection

      IMap

          CHashMap

クラスメソッド

メソッド

説明

Add

ハッシュテーブルにキー/値ペアを追加します。

kaCount

ハッシュテーブルの要素数を返します。

Comparer

ハッシュテーブルを整理するために使用されるIEqualityComparer<T>インターフェイスへのポインタを返します。

Contains

ハッシュテーブルに指定されたキー/値ペアが含まれているかどうかを判断します。

ContainsKey

ハッシュテーブルに指定されたキーを持つキー/値のペアが含まれているかどうかを判断します。

ContainsValue

CHashMap<TKey, TValue>はIMap<TKey, TValue>インターフェイスを実装するジェネリッククラスです。

CopyTo

ハッシュテーブルのすべてのキー/値ペアを指定された配列に、指定されたインデックスから開始してコピーします。

Clear

ハッシュテーブルからすべての要素を削除します。

Remove

ハッシュテーブルから指定されたキー/値ペアの最初のオカレンスを削除します。

TryGetValue

ハッシュテーブルから指定されたキーを持つ要素を取得します。

TrySetValue

ハッシュテーブルの指定されたキーでのキー/値ペアの値を変更します。

CHashSet<T>

CHashSet<T>はISet<T>インターフェイスを実装するジェネリッククラスです。

説明

CHashSet<T>クラスは、各値が一意な、T型の順序付けられていない動的データ集合の実装です。このクラスは、集合の操作とその関連操作(和集合と共通部分、下位集合や真下位集合の定義など)のための基本的なメソッドを提供します。

Declaration

  template<typename T>
class CHashSet : public ISet<T>

ヘッダ

  #include <Generic\HashSet.mqh>

継承階層

  ICollection

      ISet

          CHashSet

クラスメソッド

メソッド

説明

Add

集合に要素を追加します。

kaCount

集合の要素数を返します。

Comparer

集合に指定された値を持つ要素が含まれているかどうかを判断します。

Contains

集合を整理するために使用されるIEqualityComparer<T>インターフェイスへのポインタを返します。

TrimExcess

集合の容量を実際の要素数に設定して、未使用メモリを解放します。

CopyTo

集合のすべての要素を、指定された配列に指定されたインデックスから開始してコピーします。

Clear

集合からすべての要素を削除します。

Remove

集合から指定された要素を削除します。

ExceptWith

現在のコレクションと渡されたコレクション(配列)の差集合操作を生成します。

IntersectWith

現在のコレクションと渡されたコレクション(配列)の共通集合操作を生成します。

SymmetricExceptWith

現在の集合と指定されたコレクション(配列)の対称差集合操作を生成します。

UnionWith

現在の集合と指定されたコレクションまたは配列の和集合操作を生成します。

IsProperSubsetOf

現在の集合が指定されたコレクションまたは配列の真下位集合であるかどうかを判断します。

IsProperSupersetOf

現在の集合が指定されたコレクションまたは配列の真上位集合であるかどうかを判断します。

IsSubsetOf

現在の集合が指定されたコレクションまたは配列の下位集合であるかどうかを判断します。

IsSupersetOf

現在の集合が指定されたコレクションまたは配列の上位集合であるかどうかを判断します。

Overlaps

現在の集合が指定されたコレクションまたは配列と重複するかどうかを判断します。

SetEquals

現在の集合が指定されたコレクションまたは配列のすべての要素を含んでいるかどうかを判断します。

CLinkedList<T>

CLinkedList<T>はICollection<T>インターフェイスを実装するジェネリッククラスです。

説明

CLinkedList<T>クラスは、T型の動的二重連結データリストの実装です。このクラスは、追加、削除、検索要素などの二重連結リストを操作するための基本的なメソッドを提供します。

Declaration

  template<typename T>
class CLinkedList : public ICollection<T>

ヘッダ

  #include <Generic\LinkedList.mqh>

継承階層

  ICollection

      CLinkedList

クラスメソッド

メソッド

説明

Add

連結リストに要素を追加します。

AddAfter

連結リストの指定されたノードの後に要素を追加します。

AddBefore

連結リストの指定されたノードの前に要素を追加します。

AddFirst

連結リストの初めに要素を追加します。

AddLast

連結リストの終わりに要素を追加します。

kaCount

連結リストの要素数を返します。

Head

連結リストの最初のノードへのポインタを返します。

First

連結リストの最初のノードへのポインタを返します。

Last

連結リストの最後のノードへのポインタを返します。

Contains

連結リストに指定された値を持つ要素が含まれているかどうかを判断します。

CopyTo

連結リストのすべての要素を、指定された配列に指定されたインデックスから開始してコピーします。

Clear

連結リストからすべての要素を削除します。

Remove

連結リストから指定された要素の最初のオカレンスを削除します。

RemoveFirst

連結リストから最初の要素を削除します。

RemoveLast

連結リストから最後の要素を削除します。

Find

連結リストで値が最初に出現した位置を検索します。

FindLast

連結リストで値が最後に出現した位置を検索します。

CQueue<T>

CQueue<T>はICollection<T>インターフェイスを実装するジェネリッククラスです。

説明

CQueue<T>クラスはT型データの動的コレクションで、FIFO(先入れ先出し)原理で動作するキューとして構成されています。

Declaration

  template<typename T>
class CQueue : public ICollection<T>

ヘッダ

  #include <Generic\Queue.mqh>

継承階層

  ICollection

      CQueue

クラスメソッド

メソッド

説明

Add

キューに要素を追加します。

Enqueue

キューに要素を追加します。

kaCount

キューの要素数を返します。

Contains

キューに指定された値を持つ要素が含まれているかどうかを判断します。

TrimExcess

キューの容量を実際の要素数に設定して、未使用メモリを解放します。

CopyTo

キューのすべての要素を、指定された配列に指定されたインデックスから開始してコピーします。

Clear

キューからすべての要素を削除します。

Remove

キューから指定された要素の最初のオカレンスを削除します。

Dequeue

最初の要素をキューから削除して返します。

Peek

最初の要素をキューから削除せずに返します。

CRedBlackTree<T>

CRedBlackTree<T>はICollection<T>インターフェイスを実装するジェネリッククラスです。

説明

CRedBlackTree<T>クラスは、ノードがT型のデータを格納する動的な赤黒木の実装です。このクラスでは、追加、削除、最大値と最小値の検索などの赤黒木を操作するための基本的なメソッドを提供しています。

Declaration

  template<typename T>
class CRedBlackTree : public ICollection<T>

ヘッダ

  #include <Generic\RedBlackTree.mqh>

継承階層

  ICollection

      CRedBlackTree

クラスメソッド

メソッド

説明

Add

赤黒木に要素を追加します。

Root

赤黒木の根へのポインタを返します。

kaCount

赤黒木の要素数を返します。

Contains

赤黒木に指定された値を持つ要素が含まれているかどうかを判断します。

Comparer

赤黒木を整理するために使用されるIComparer<T>インターフェイスへのポインタを返します。

TryGetMin

赤黒木の最小要素を取得します。

TryGetMax

赤黒木の最大要素を取得します。

CopyTo

赤黒木のすべての要素を、指定された配列に指定されたインデックスから開始してコピーします。

Clear

赤黒木からすべての要素を削除します。

Remove

赤黒木から指定された要素の最初のオカレンスを削除します。

RemoveMin

赤黒木から最小値を持つ要素を削除します。

RemoveMax

赤黒木から最大値を持つ要素を削除します。

Find

赤黒木で指定された要素を検索します。

FindMax

赤黒木で最大値を持つ要素を検索します。

FindMin

赤黒木で最小値を持つ要素を検索します。

CSortedMap<TKey, TValue>

CSortedMap<TKey,TValue>はIMap<TKey,TValue>インターフェイスを実装するジェネリッククラスです。

説明

CSortedMap<TKey,TValue>クラスは、データがキーでソートされ、キーの一意性の要件を考慮してキー/値ペアとして格納される動的ハッシュテーブルの実装です。このクラスは、キーで値にアクセスし、キー/値ペアを検索して削除するなどのハッシュテーブルを操作するための基本的なメソッドを提供します。

Declaration

  template<typename TKey, typename TValue>
class CSortedMap : public IMap<TKey, TValue>

ヘッダ

  #include <Generic\SortedMap.mqh>

継承階層

  ICollection

      IMap

          CSortedMap

クラスメソッド

メソッド

説明

Add

ハッシュテーブルにキー/値ペアを追加します。

kaCount

ソート済みハッシュテーブルの要素数を返します。

Contains

ソート済みハッシュテーブルに指定されたキー/値ペアが含まれているかどうかを判断します。

ContainsKey

ソート済みハッシュテーブルに指定されたキーを持つキー/値のペアが含まれているかどうかを判断します。

ContainsValue

ソート済みハッシュテーブルに指定された値を持つキー/値のペアが含まれているかどうかを判断します。

Comparer

ソート済みハッシュテーブルを整理するために使用されるIComparer<T>インターフェイスへのポインタを返します。

CopyTo

ソート済みハッシュテーブルのすべてのキー/値ペアを指定された配列に、指定されたインデックスから開始してコピーします。

Clear

ソート済みハッシュテーブルからすべての要素を削除します。

Remove

ソート済みハッシュテーブルから指定されたキー/値ペアの最初のオカレンスを削除します。

TryGetValue

ソート済みハッシュテーブルから指定されたキーを持つ要素を取得します。

TrySetValue

ソート済みハッシュテーブルで指定されたキーを持つ要素を変更します。

CSortedSet<T>

CSortedSet<T>はISet<T>インターフェイスを実装するジェネリッククラスです。

説明

CHashSet<T>クラスは、各値が一意な、T型の順序付けられている動的データセットの実装です。このクラスは、集合の操作とその関連操作(和集合と共通部分、下位集合や真下位集合の定義など)のための基本的なメソッドを提供します。

Declaration

  template<typename T>
class CSortedSet : public ISet<T>

ヘッダ

  #include <Generic\SortedSet.mqh>

継承階層

  ICollection

      ISet

          CSortedSet

クラスメソッド

メソッド

説明

Add

ソート済み集合に要素を追加します。

kaCount

ソート済み集合の要素数を返します。

Contains

ソートされた集合に指定された値を持つ要素が含まれているかどうかを判断します。

Comparer

ソート済み集合を整理するために使用されるIComparer<T>インターフェイスへのポインタを返します。

TryGetMin

ソート済み集合の指定された要素を取得します。

TryGetMax

ソート済み集合の最大要素を取得します。

CopyTo

ソート済み集合のすべての要素を、指定された配列に指定されたインデックスから開始してコピーします。

Clear

ソート済み集合からすべての要素を削除します。

Remove

ソート済み集合から指定された要素を削除します。

ExceptWith

現在のコレクションと渡されたコレクション(配列)の差集合操作を生成します。

IntersectWith

現在のコレクションと渡されたコレクション(配列)の共通集合操作を生成します。

SymmetricExceptWith

現在の集合と指定されたコレクション(配列)の対称差集合操作を生成します。

UnionWith

現在の集合と指定されたコレクションまたは配列の和集合操作を生成します。

IsProperSubsetOf

現在のソート済み集合が指定されたコレクションまたは配列の真下位集合であるかどうかを判断します。

IsProperSupersetOf

現在のソート済み集合が指定されたコレクションまたは配列の真上位集合であるかどうかを判断します。

IsSubsetOf

現在のソート済み集合が指定されたコレクションまたは配列の下位集合であるかどうかを判断します。

IsSupersetOf

現在のソート済み集合が指定されたコレクションまたは配列の上位集合であるかどうかを判断します。

Overlaps

現在のソート済み集合が指定されたコレクションまたは配列と重複するかどうかを判断します。

SetEquals

現在のソート済み集合が指定されたコレクションまたは配列のすべての要素を含んでいるかどうかを判断します。

GetViewBetween

現在のソート済み集合から、最小値と最大値で指定された下位集合を取得します。

GetReverse

現在のソート済み集合のすべての要素が逆の順序で配置されているコピーを取得します。

CStack<T>

CStack<T>はICollection<T>インターフェイスを実装するジェネリッククラスです。

説明

CStack<T>classはT型データの動的コレクションで、LIFO(ラスト・イン・ファースト・アウト)原理で動作するスタックとして編成されています。

Declaration

  template<typename T>
class CStack : public ICollection<T>

ヘッダ

  #include <Generic\Stack.mqh>

継承階層

  ICollection

      CStack

クラスメソッド

メソッド

説明

Add

スタックに要素を追加します。

kaCount

スタックの要素数を返します。

Contains

スタックに指定された値を持つ要素が含まれているかどうかを判断します。

TrimExcess

スタックの容量を実際の要素数に設定します。

CopyTo

スタックのすべての要素を、指定された配列に指定されたインデックスから開始してコピーします。

Clear

スタックからすべての要素を削除します。

Remove

スタックから指定された要素の最初のオカレンスを削除します。

Push

スタックに要素を追加します。

Peek

先頭要素をスタックから削除せずに返します。

Pop

先頭要素をスタックから削除してに返します。

ArrayBinarySearch

IComparable<T>を使用して要素を比較して昇順ソートされた1次元配列で指定された値を検索します。

template<typename T>
int ArrayBinarySearch(
T&           array[],         <t5// 検索対象の配列
const int     start_index,     // 開始インデックス
const int     count,           // 検索範囲
T             value,          // 検索値
IComparer<T>* comparer       // 比較インターフェイス
);

パラメータ

&array[]

[out]   検索される配列

value

[in]  検索値

*comparer

[in] 要素比較インターフェイス

start_index

[in] 検索開始インデックス

count

[in]  検索範囲の長さ

戻り値

見つかった要素のインデックスを返します。検索値が見つからない場合は、値が最も小さい最小の要素のインデックスを返します。

ArrayIndexOf

1次元配列で値の最初の出現を検索します。

template<typename T>
int ArrayIndexOf(
T&        array[],         <t5// 検索対象の配列
T          value,          // 検索値
const int  start_index,    // 開始インデックス
const int  count            // 検索範囲
);

パラメータ

&array[]

[out]   検索される配列

value

[in]  検索値

start_index

[in] 検索開始インデックス

count

[in]  検索範囲の長さ

戻り値

初めに見つかった要素のインデックスを返します。値が見つからなかった場合は-1を返します。

ArrayLastIndexOf

1次元配列で値の最後の出現を検索します。

template<typename T>
int ArrayLastIndexOf(
T&       array[],         <t5// 検索対象の配列
T         value,          // 検索値
const int start_index,     // 開始インデックス
const int  count            // 検索範囲
);

パラメータ

&array[]

[out]   検索される配列

value

[in]  検索値

start_index

[in] 検索開始インデックス

count

[in]  検索範囲の長さ

戻り値

最後に見つかった要素のインデックスを返します。値が見つからなかった場合は-1を返します。

ArrayReverse

1次元配列の要素の順序を変更します。

template<typename T>
bool ArrayReverse(
T&       array[],        // ソース配列
const int start_index,     // 開始インデックス
const int count            // 要素数
);

パラメータ

&array[]

[out]  ソース配列

start_index

[in]  開始インデックス

count

[in]  操作に関与する配列要素の数

戻り値

成功の場合はtrue、それ以外の場合はfalseを返します。

Compare

2つの値をそのうち1つがあと1つと比べて「より大きい、より小さい、等しい」かで比較します。

2つのブール値を扱うためのバージョン:

int Compare(
const bool  x,        // 1番目の値
const bool  y          // 2番目の値
);

2つのchar値を扱うためのバージョン:

int Compare(
const char  x,        // 1番目の値
const char  y          // 2番目の値
);

2つのuchar値を扱うためのバージョン:

int Compare(
const uchar  x,        // 1番目の値
const uchar  y        // 2番目の値
);

2つのshort値を扱うためのバージョン:

int Compare(
const short x,        // 1番目の値
const short y        // 2番目の値
);

2つのushort値を扱うためのバージョン:

int Compare(
const ushort  x,      // 1番目の値
const ushort  y        // 2番目の値
);

2つのcolor値を扱うためのバージョン:

int Compare(
const color x,        // 1番目の値
const color y        // 2番目の値
);

2つのint値を扱うためのバージョン:

int Compare(
const int x,          // 1番目の値
const int y          // 2番目の値
);

2つのuint値を扱うためのバージョン:

int Compare(
const uint x,        // 1番目の値
const uint y          // 2番目の値
);

2つのdatetime値を扱うためのバージョン:

int Compare(
const datetime x,     // 1番目の値
const datetime  y      // 2番目の値
);

2つのlong値を扱うためのバージョン:

int Compare(
const long x,        // 1番目の値
const long  y          // 2番目の値
);

2つのulong値を扱うためのバージョン:

int Compare(
const ulong  x,        // 1番目の値
const ulong  y        // 2番目の値
);

2つの float値を扱うためのバージョン:

int Compare(
const float  x,        // 1番目の値
const float  y        // 2番目の値
);

2つのdouble値を扱うためのバージョン:

int Compare(
const double  x,      // 1番目の値
const double y        // 2番目の値
);

2つのstring値を扱うためのバージョン:

int Compare(
const string  x,      // 1番目の値
const string y        // 2番目の値
);

2つのその他の型の値を扱うためのバージョン:

template<typename T>
int Compare(
T  x,                  // 1番目の値
T  y                  // 2番目の値
);

パラメータ

x

[in]  1番目の値

y

[in]  2番目の値

戻り値

比較された2つの値の比を表す数値を返します。

  • 結果が0より小さい場合、xはyより小さい(x <y)です。
  • 結果がゼロに等しい場合、xはyに等しい(x = y)です。
  • 結果がゼロより大きい場合、xはyより大きい(x> y)です。

注意事項

T型がIComparable<T>インターフェイスを実装するオブジェクトである場合、オブジェクトはそのCompareメソッドに基づいて比較されます。その他のすべての場合には0が返されます。

Equals

2つの値が等しいかどうかを比較します。

template<typename T>
bool Equals(
T x,     // 1番目の値
T y      // 2番目の値
);

パラメータ

x

[in]  1番目の値

y

[in]  2番目の値

戻り値

オブジェクトが等しい場合はtrue、それ以外の場合はfalseを返します。

注意事項

T型がIEqualityComparable<T>インターフェイスを実装するオブジェクトである場合、オブジェクトはそのEqualsメソッドに基づいて比較されます。他のすべての場合には、平等のための標準的な比較が使用されます。

GetHashCode

ハッシュコード値を計算します。

ブール型を扱うためのバージョン:

int GetHashCode(
const bool value        // 値
);

char型を扱うためのバージョン:

int GetHashCode(
const char  value        // 値
);

uchar型を扱うためのバージョン:

int GetHashCode(
const uchar  value        // 値
);

short型を扱うためのバージョン:

int GetHashCode(
const short  value        // 値
);

ushort型を扱うためのバージョン:

int GetHashCode(
const ushort value      // 値
);

color型を扱うためのバージョン:

int GetHashCode(
const color  value        // 値
);

int型を扱うためのバージョン:

int GetHashCode(
const int  value          // 値
);

uint型を扱うためのバージョン:

int GetHashCode(
const uint value        // 値
);

datetime型を扱うためのバージョン:

int GetHashCode(
const datetime  value     // 値
);

long型を扱うためのバージョン:

int GetHashCode(
const long value        // 値
);

ulong型を扱うためのバージョン:

int GetHashCode(
const ulong value        // 値
);

float型を扱うためのバージョン:

int GetHashCode(
const float value        // 値
);

double型を扱うためのバージョン:

int GetHashCode(
const double value      // 値
);

string型を扱うためのバージョン:

int GetHashCode(
const string  value      // 値
);

その他の型を扱うためのバージョン:

template<typename T>
int GetHashCode(
T  value                  // 値
);

パラメータ

value

[in] ハッシュコードを取得したい値

戻り値

ハッシュコードを返します。

注意事項

T型がIEqualityComparable<T>インターフェイスを実装するオブジェクトである場合、ハッシュコードはそのHashCodeメソッドに基づいて取得されます。それ以外の場合では全て、ハッシュコードは値型名のハッシュ値として計算されます。

Originally posted 2019-07-30 10:04:17.

Leave a Reply

Your email address will not be published. Required fields are marked *

CAPTCHA


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">