Diese Klasse stellt die Objektnamen von ConceptBase in C++ dar. Da die Objektnamen nicht nur einfache Zeichenketten sind, sondern auch eine komplexe Struktur haben können, wurde dafür eine spezielle Klasse implementiert.
class CBobjectName {
public:
/* Constructor */
CBobjectName(const char* termstr);
CBobjectName(const CBterm* t);
CBobjectName(const CBobjectName& oname);
/* Destructor */
~CBobjectName();
CBobjectName& operator=(const CBobjectName& o);
bool operator==(const CBobjectName&) const;
bool operator==(const char*) const;
bool operator<(const CBobjectName&) const;
bool operator<(const char*) const;
// Cast-Operators
operator char*();
operator int();
operator double();
private:
char* label;
char* selectop;
CBobjectName* selectLeft;
CBobjectName* selectRight;
CBlist<CBderiveExpression> substList;
// ...
};