DALC++ is a C++ class library that makes connecting to a relational database effortless. It takes care of the transformation between the object-oriented paradigm and the relational model without compromises. It provides automatically generated object identities, support for bi-directional associations, and a query language in C++. DALC++ implements an advanced transaction model for both the database and the client, and uses an optimistic locking strategy to make applications built with it completely multi-user. Other advanced features include client-side cache, automatic garbage collection, a multilevel undo/redo mechanism and the Model Generator, a DALC++ sample application that can generate header files that define your class model.