CXI-Basis-Programmierreferenz / Version 2 / Datenspeicherung / CxiNode / Statusabfragen /
int CxiNode :: IsValid () const
Prüft, ob der CXI-Knoten bzw. das Sichtfenster des CXI-Baums gültig ist.
return:
1 Block ok
0 Block fehlerhaft
Auch ein fehlerhafter Block muss mit Hilfe des Destruktors freigegeben werden! Alle anderen Statusabfragen und Zugriffe sind nur definiert, wenn IsValid() == 1 ist!
Ein Block wird fehlerhaft, wenn der Konstruktor fehlschlägt oder später ein schwerer Fehler auftritt, der vom CXI-System nicht korrekt behandelt werden kann (Dateilesefehler, Speichermangel, Strukturfehler).
IsValid ist kein Ersatz für Validate: IsValid()==0 besagt, dass ein schwerer Fehler aufgetreten ist und der INHALT des Blocks ungültig ist; dies heißt noch lange nicht, dass die STRUKTUR des Blocks zerstört ist. So kann bei IsValid()==0 ohne Probleme im Programm fortgefahren werden, während dies bei Validate()!=cxiNoError nicht empfehlenswert ist.
Portabilität:
Diese Funktion ist in allen unterstützten Systemen verfügbar.
Beispiel:
#include "cxib.h"
int main ()
{
CxiNode cxi; // Ein Standard-CXI-Knoten
cxi.ReadBlockFromFile ("TEST.CXI");
if (cxi.IsValid())
{
// Verarbeitung...
}
return 0;
}