| c4_Bytes | Generic data buffer, with optional automatic clean up | 
| c4_BytesProp | Binary properties | 
| c4_BytesRef | Used to get or set binary object values | 
| c4_Cursor | An iterator for collections of rows (views) | 
| c4_CustomViewer | Abstract base class for definition of custom views | 
| c4_DoubleProp | Double precision properties | 
| c4_DoubleRef | Used to get or set double precision values | 
| c4_FileStrategy | A file strategy encapsulates code dealing with all file I/O | 
| c4_FileStream | A file stream can be used to serialize using the stdio library | 
| c4_FloatProp | Floating point properties | 
| c4_FloatRef | Used to get or set floating point values | 
| c4_IntProp | Integer properties | 
| c4_IntRef | Used to get or set integer values | 
| c4_LongProp | Long int properties | 
| c4_LongRef | Used to get or set long int values | 
| c4_Property | Base class for the basic data types | 
| c4_Reference | A reference is used to get or set typed data, using derived classes | 
| c4_Row | An entry in a collection with copy semantics | 
| c4_RowRef | Reference to a data row, can be used on either side of an assignment | 
| c4_Sequence | A sequence is an abstract base class for views on ranges of records | 
| c4_Storage | Manager for persistent storage of view structures | 
| c4_Strategy | A strategy encapsulates code dealing with the I/O system interface | 
| c4_Stream | A stream is a virtual helper class to serialize in binary form | 
| c4_String | An efficient string class, modeled after the MFC version | 
| c4_StringProp | String properties | 
| c4_StringRef | Used to get or set string values | 
| c4_View | A collection of data rows | 
| c4_ViewProp | View properties | 
| c4_ViewRef | Used to get or set view values |