create_dictT_create_dictCreateDictCreateDict (Operator)

Name

create_dictT_create_dictCreateDictCreateDict — Erzeugen eines neuen Dictionaries.

Signatur

create_dict( : : : DictHandle)

Herror T_create_dict(Htuple* DictHandle)

void CreateDict(HTuple* DictHandle)

void HDict::HDict()

void HDict::CreateDict()

static void HOperatorSet.CreateDict(out HTuple dictHandle)

public HDict()

void HDict.CreateDict()

Beschreibung

create_dictcreate_dictCreateDictCreateDictCreateDict erzeugt ein neues, leeres Dictionary und gibt dessen Handle in DictHandleDictHandleDictHandleDictHandledictHandle zurück.

Ein Dictionary ist ein Objekt, das ähnlich einem assoziativem Array (Wörterbuch) aufgebaut ist. Es erlaubt eine beliebige Anzahl von Daten zu speichern, welche mit Hilfe eines eindeutigen Schlüssels (String oder Integer) identifiziert werden. Jeder Schlüssel kann entweder einen Tupeldaten-Parameter oder ein ikonisches Objekt referenzieren. Diese Daten werden in dem Dictionary mit Hilfe der Operatoren set_dict_objectset_dict_objectSetDictObjectSetDictObjectSetDictObject und set_dict_tupleset_dict_tupleSetDictTupleSetDictTupleSetDictTuple gespeichert und können über die Operatoren get_dict_objectget_dict_objectGetDictObjectGetDictObjectGetDictObject und get_dict_tupleget_dict_tupleGetDictTupleGetDictTupleGetDictTuple wieder ausgelesen werden.

Die Daten, welche in dem Dictionary referenziert werden, sind stets Kopien ihrer Originale. Damit können die originalen Daten, nachdem sie in dem Dictionary durch die Operatoren set_dict_tupleset_dict_tupleSetDictTupleSetDictTupleSetDictTuple oder set_dict_objectset_dict_objectSetDictObjectSetDictObjectSetDictObject gespeichert wurden, verändert oder gelöscht werden, ohne das Dictionary selbst zu verändern. Eine Ausnahme bilden Handles: Beim Speichern eines Handles in einem Dictionary wird nur der Handle-Wert, nicht aber das Handle-Objekt selbst kopiert (keine "deep copy").

Ausführungsinformationen

Dieser Operator liefert ein Handle zurück. Es ist zu beachten, dass der Zustand einer Instanz dieses Handletyps durch bestimmte Operatoren geändert werden kann, obwohl das Handle als Eingabeparameter in diesen Operatoren verwendet wird.

Parameter

DictHandleDictHandleDictHandleDictHandledictHandle (output_control)  dict HDict, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle des neuen Dictionaries.

Parameteranzahl: DictHandle == 1

Beispiel (HDevelop)

Dicts := []
for idx := 0 to 4 by 1
  create_dict (DictHandle)
  Dicts[idx] := DictHandle
endfor
* ...

Ergebnis

create_dictcreate_dictCreateDictCreateDictCreateDict liefert den Wert 2 (H_MSG_TRUE), sofern kein Allokierungsfehler auftritt.

Nachfolger

set_dict_tupleset_dict_tupleSetDictTupleSetDictTupleSetDictTuple, set_dict_objectset_dict_objectSetDictObjectSetDictObjectSetDictObject

Siehe auch

set_dict_tupleset_dict_tupleSetDictTupleSetDictTupleSetDictTuple, get_dict_tupleget_dict_tupleGetDictTupleGetDictTupleGetDictTuple, set_dict_objectset_dict_objectSetDictObjectSetDictObjectSetDictObject, get_dict_objectget_dict_objectGetDictObjectGetDictObjectGetDictObject, get_dict_paramget_dict_paramGetDictParamGetDictParamGetDictParam

Modul

Foundation