Files
Avancerad_CPP/Lab6/node.h
2026-03-05 13:16:26 +01:00

96 lines
2.2 KiB
C++

//## begin module.cm preserve=no
// %X% %Q% %Z% %W%
//## end module.cm
//## begin module.cp preserve=no
//## end module.cp
//## Module: Node; Pseudo Package specification
//## Subsystem: Figures
//## Source file: Node.h
#ifndef Node_h
#define Node_h 1
//## begin module.additionalIncludes preserve=no
//## end module.additionalIncludes
//## begin module.includes preserve=yes
//## end module.includes
//## begin module.additionalDeclarations preserve=yes
//## end module.additionalDeclarations
//## Class: Node; Parameterized Class
//## Category: Figures
//## Subsystem: Figures
//## Persistence: Transient
//## Cardinality/Multiplicity: n
template <class T>
class Node
{
//## begin Node.initialDeclarations preserve=yes
public:
Node(T theData):data(theData){next = (Node<T>*)0;}
//## end Node.initialDeclarations
public:
//## Constructors (generated)
Node();
//## Destructor (generated)
~Node();
// Additional Public Declarations
//## begin Node.public preserve=yes
Node *next;
T data;
//## end Node.public
protected:
// Additional Protected Declarations
//## begin Node.protected preserve=yes
//## end Node.protected
private:
// Additional Private Declarations
//## begin Node.private preserve=yes
//## end Node.private
private: //## implementation
// Data Members for Has Relationships
//## Documentation Node::next.has
//## begin Node::next.has preserve=yes public: Node {1 -> 1RO}
// Node *next;
//## end Node::next.has
// Data Members for Class Attributes
//## Attribute: data
//## begin Node::data.attr preserve=yes public: T {U}
// T data;
//## end Node::data.attr
// Additional Implementation Declarations
//## begin Node.implementation preserve=yes
//## end Node.implementation
};
//## begin Node.postscript preserve=yes
#include "node.cpp"
//## end Node.postscript
// Parameterized Class Node
//## begin module.epilog preserve=yes
//## end module.epilog
#endif