Listen von float-Zahlen.
Ein allgemeines Beispiel zur Verwendung der Klasse floatlist finden sie hier.
Listen von float-Zahlen. Im Gegensatz zu anderen Listen ist hier der Abbruchwert bei first/next, last/prev nicht 0 sondern kMaxFloat.
static FloatList floatlist::alloc()
Erzeuge eine neue leere Liste vom Typ FloatList. Die Liste muss mit floatlist::release wieder gelöscht werden.
Name | Typ | Default | Beschreibung |
Return | FloatList | Neue leere Liste für floats |
static int floatlist::release(FloatList li)
Lösche eine mit floatlist::alloc erzeugte Liste wieder.
Name | Typ | Default | Beschreibung |
li | FloatList | - | Zu löschende Liste |
static int floatlist::length(FloatList li)
Ermittle die Anzahl der Elemente einer Liste.
Name | Typ | Default | Beschreibung |
Return | int | Anzahl der Einträge der Liste | |
li | FloatList | - | Liste |
static float floatlist::first(FloatList li)
Hole den ersten Eintrag einer nichtleeren FloatList. Wird kein Eintrag in der Liste gefunden, gibt die Funktion den Wert kMaxFloat zurück.
Name | Typ | Default | Beschreibung |
Return | float | Erster Wert der Liste. | |
li | FloatList | - | Liste mit mindestens einem Element |
Aufbau einer Liste und Anwendung einiger Listenfunktionen.
#include "internal/types.h"
int w_flist (FloatList fl, char * trailer) { float f;
if (strlen (trailer)) wlog ("", "%s\n", trailer);
for (f = floatlist::first (fl); f != kMaxFloat; f = floatlist::next (fl)) wlog ("", " %f\n", f);
return 0; }
int main () { FloatList fl = floatlist::alloc (); float f;
wlog ("", "kMaxFloat = %f\n", kMaxFloat);
floatlist::append (fl, 14.01); floatlist::append (fl, 17.02); floatlist::append (fl, 29.10); floatlist::insert (fl, 2, 26.11);
w_flist (fl, "List");
floatlist::sort (fl, 0); w_flist (fl, "Ascent sorted");
floatlist::sort (fl, 1); w_flist (fl, "Descent sorted");
floatlist::remove (fl, 14.01); w_flist (fl, "14.01 removed");
floatlist::release (fl);
return 0; }
static float floatlist::next(FloatList li)
Hole den nächsten Eintrag einer Liste. Wird kein Eintrag in der Liste gefunden, gibt die Funktion den Wert kMaxFloat zurück.
Name | Typ | Default | Beschreibung |
Return | float | Nächster Wert der Liste. | |
li | FloatList | - | Liste mit mindestens einem Element nach dem aktuellen Listenzeiger |
Aufbau einer Liste und Anwendung einiger Listenfunktionen.
#include "internal/types.h"
int w_flist (FloatList fl, char * trailer) { float f;
if (strlen (trailer)) wlog ("", "%s\n", trailer);
for (f = floatlist::first (fl); f != kMaxFloat; f = floatlist::next (fl)) wlog ("", " %f\n", f);
return 0; }
int main () { FloatList fl = floatlist::alloc (); float f;
wlog ("", "kMaxFloat = %f\n", kMaxFloat);
floatlist::append (fl, 14.01); floatlist::append (fl, 17.02); floatlist::append (fl, 29.10); floatlist::insert (fl, 2, 26.11);
w_flist (fl, "List");
floatlist::sort (fl, 0); w_flist (fl, "Ascent sorted");
floatlist::sort (fl, 1); w_flist (fl, "Descent sorted");
floatlist::remove (fl, 14.01); w_flist (fl, "14.01 removed");
floatlist::release (fl);
return 0; }
static float floatlist::prev(FloatList li)
Hole den vorherigen Eintrag einer Liste. Wird kein Eintrag in der Liste gefunden, gibt die Funktion den Wert kMaxFloat zurück.
Name | Typ | Default | Beschreibung |
Return | float | Wert der Vorgängers in der Liste. | |
li | FloatList | - | Liste mit mindestens einem Element nach dem aktuellen Listenzeiger |
Aufbau einer Liste und Anwendung einiger Listenfunktionen.
#include "internal/types.h"
int w_flist (FloatList fl, char * trailer) { float f;
if (strlen (trailer)) wlog ("", "%s\n", trailer);
for (f = floatlist::first (fl); f != kMaxFloat; f = floatlist::next (fl)) wlog ("", " %f\n", f);
return 0; }
int main () { FloatList fl = floatlist::alloc (); float f;
wlog ("", "kMaxFloat = %f\n", kMaxFloat);
floatlist::append (fl, 14.01); floatlist::append (fl, 17.02); floatlist::append (fl, 29.10); floatlist::insert (fl, 2, 26.11);
w_flist (fl, "List");
floatlist::sort (fl, 0); w_flist (fl, "Ascent sorted");
floatlist::sort (fl, 1); w_flist (fl, "Descent sorted");
floatlist::remove (fl, 14.01); w_flist (fl, "14.01 removed");
floatlist::release (fl);
return 0; }
static float floatlist::last(FloatList li)
Hole den letzten Eintrag einer nichtleeren einer Liste. Wird kein Eintrag in der Liste gefunden, gibt die Funktion den Wert kMaxFloat zurück.
Name | Typ | Default | Beschreibung |
Return | float | Letzter Wert der Liste. | |
li | FloatList | - | Liste mit mindestens einem Element |
Aufbau einer Liste und Anwendung einiger Listenfunktionen.
#include "internal/types.h"
int w_flist (FloatList fl, char * trailer) { float f;
if (strlen (trailer)) wlog ("", "%s\n", trailer);
for (f = floatlist::first (fl); f != kMaxFloat; f = floatlist::next (fl)) wlog ("", " %f\n", f);
return 0; }
int main () { FloatList fl = floatlist::alloc (); float f;
wlog ("", "kMaxFloat = %f\n", kMaxFloat);
floatlist::append (fl, 14.01); floatlist::append (fl, 17.02); floatlist::append (fl, 29.10); floatlist::insert (fl, 2, 26.11);
w_flist (fl, "List");
floatlist::sort (fl, 0); w_flist (fl, "Ascent sorted");
floatlist::sort (fl, 1); w_flist (fl, "Descent sorted");
floatlist::remove (fl, 14.01); w_flist (fl, "14.01 removed");
floatlist::release (fl);
return 0; }
static int floatlist::get_pos(
FloatList li,
float val,
int setPos = 0)
Suche die erste Position eines Wertes in der Liste. Wird kein Eintrag nicht gefunden , gibt die Funktion den Wert -1 zurück. Listenposition sind 0-basiert, das erste Element hat also die Position 0, das letzte die Position length-1.
Name | Typ | Default | Beschreibung |
Return | int | >= 0 : Erstes Auftreten des Wertes in der Liste -1 : Wert nicht gefunden |
|
li | FloatList | - | Liste, in der der Wert gesucht werden soll |
val | float | - | Dieser Wert wird gesucht |
setPos | int | 0 | 0 : Listenposition unverändert lassen 1 : Aktuelle Listenposition auf Fundstelle setzen |
static float floatlist::get(
FloatList li,
int pos,
int setPos= 0)
Hole das i-te Element der Liste. Wird kein Eintrag in der Liste gefunden, gibt die Funktion den Wert kMaxFloat zurück. Listenposition sind 0-basiert, das erste Element hat also die Position 0, das letzte die Position length-1.
Name | Typ | Default | Beschreibung |
Return | float | Wert der Liste an der Stelle i oder 0. | |
li | FloatList | - | Liste, aus der das Element geholt werden soll |
pos | int | - | 0-basierte Listenposition |
setPos | int | 0 | 0 : Listenposition unverändert lassen 1 : Aktuelle Listenposition auf pos setzen |
static float floatlist::append(FloatList li, float f)
Wert an die Liste anfügen.
Name | Typ | Default | Beschreibung |
Return | float | angefügter neuer Wert oder kMaxFloat | |
li | FloatList | - | Liste, an die angefügt werden soll |
f | float | - | Anzufügender Wert |
static float floatlist::insert(
FloatList li,
int pos,
float f)
Wert in die Liste einfügen.
Name | Typ | Default | Beschreibung |
Return | float | eingefügter neuer Wert oder kMaxFloat | |
li | FloatList | - | Liste, in die eingefügt werden soll |
pos | int | - | 0-basierte Einfügeposition |
f | float | - | einzufügender Wert |
static float floatlist::remove(FloatList li, float val)
Entferne das erste Auftreten eines Wertes aus der Liste.
Name | Typ | Default | Beschreibung |
Return | float | entfernter Wert oder kMaxFloat | |
li | FloatList | - | Liste, aus der gelöscht werden soll |
val | float | - | Wert, der aus der Liste entfernt werden soll |
static float floatlist::remove_pos(FloatList li, int pos)
Entferne eine Position aus der Liste. Listenposition sind 0-basiert, das erste Element hat also die Position 0, das letzte die Position length-1.
Name | Typ | Default | Beschreibung |
Return | float | entfernter Wert oder kMaxFloat | |
li | FloatList | - | Liste |
pos | int | - | 0-basierte Löschposition |
id = floatlist::remove_pos (0); if (id) float::release (id);
static int floatlist::clear(FloatList li)
Entferne alle Elemente der Liste
Name | Typ | Default | Beschreibung |
Return | int | 1 : Aktion erfolgreich 0 : sonst |
|
li | FloatList | - | Liste |
static int floatlist::sort(FloatList li, int direction = 0)
Sortiere die Liste.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
li | FloatList | - | Liste, die sortiert werden soll |
direction | int | 0 | Sortierreihenfolge 0 : aufsteigend 1 : absteigend |
static char* floatlist::to_xml(FloatList list, char* rootElementName = "floats")
Generiere die XML Struktur eines FloatList-Objekts.
Wenn Sie über die Verwendung dieser Funktion nachdenken, sind Sie möglicherweise an näheren Informationen zur Interaktion von cscript mit auf dem PubServer als PlugIn bereitgestellten Java-Methoden interessiert. Mehr Informationen dazu finden Sie hier.
Name | Typ | Default | Beschreibung |
Return | char * | xml string oder 0 bei Fehlern. Der Ergebnisstring ist nur bis zum nächsten Aufruf einer to_xml-Funktion gültig und darf nicht verändert oder freigegeben werden. | |
list | FloatList | - | Object |
rootElementName | String oder char* | floats | Name des Root-Elements |
static FloatList floatlist::from_xml(char* xml)
Generiere eine FloatList-Objekt aus einer XML Struktur.
Wenn Sie über die Verwendung dieser Funktion nachdenken, sind Sie möglicherweise an näheren Informationen zur Interaktion von cscript mit auf dem PubServer als PlugIn bereitgestellten Java-Methoden interessiert. Mehr Informationen dazu finden Sie hier.
Name | Typ | Default | Beschreibung |
Return | FloatList | Objekt vom Typ FloatList. Dieses Objekt muss mit floatlist::release wieder freigegeben werden. | |
xml | String oder char* | - | xml string |
static int floatlist::add_all(
FloatList target,
FloatList src,
int deleteFromSource)
Füge alle Elemente der Liste src in die Liste target ein..
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
target | FloatList | - | Zielliste |
src | FloatList | - | Quellliste |
deleteFromSource | int | 0 | Elemente nach dem übertragen aus der Quellliste entfernen |
Aufbau einer Liste und Anwendung einiger Listenfunktionen.
#include "internal/types.h"
int w_flist (FloatList fl, char * trailer) { float f;
if (strlen (trailer)) wlog ("", "%s\n", trailer);
for (f = floatlist::first (fl); f != kMaxFloat; f = floatlist::next (fl)) wlog ("", " %f\n", f);
return 0; }
int main () { FloatList fl = floatlist::alloc (); float f;
wlog ("", "kMaxFloat = %f\n", kMaxFloat);
floatlist::append (fl, 14.01); floatlist::append (fl, 17.02); floatlist::append (fl, 29.10); floatlist::insert (fl, 2, 26.11);
w_flist (fl, "List");
floatlist::sort (fl, 0); w_flist (fl, "Ascent sorted");
floatlist::sort (fl, 1); w_flist (fl, "Descent sorted");
floatlist::remove (fl, 14.01); w_flist (fl, "14.01 removed");
floatlist::release (fl);
return 0; }
Alphabetic index HTML hierarchy of classes or Java