eine Zeit lang mussten die Objekte eines Pfades einzeln auf Verfügbarkeit geprüft werden, um keinen Systemabsturz zu bekommen und letztendlich ein Merkmal abfragen zu können.
Beispiel:
if Objekt and Objekt.KomponenteX and Objekt.KomponenteX.KomponenteY then
if (Variable := Objekt.KomponenteX.KomponenteY.Merkmal) = novalue then
return novalue;
endif;
endif;
#
return;
Seit Camos 16 ist es möglich die Objekte smart in einer Zeile auf Gültigkeit zu prüfen, indem vor der Punktnotation ein Fragezeichen gesetzt wird.
Beispiel:
if (Variable := Objekt?.KomponenteX?.KomponenteY?.Merkmal) = novalue then
return novalue;
endif;
#
return;
Bei dieser Syntax wird Novalue ausgegeben sobald einer dieser Objekte nicht besteht.