About C!

The C! (aka C Bang or cbang) library is a collection of C++ utility libraries developed over the course of +10 years and several major C++ application development projects. It should compile and run on Windows, Linux and OSX using a modern C++ compiler.

Many of the facilities of C! are geared towards cross-platform application development and provide basic services that most applications need such as a configuration system, run-time build information, logging facilities, threads, smart pointers, simple embedded scripting, etc.

C!'s philosophy is to create clean, simple, readable, modular and reusable code. C! also encourages exception based error handling, and light use of C++ templates and C preprocessor macros.

C! "leans" on the venerable boost library but also reimplements several boost APIs which are considered by the author to be too template heavy, less readable or overly complicated in boost.

The code was developed on an as needed basis and was never intended to be any sort of grand unifying system for C++ application development. However, I hope you find many parts of the library useful in your C++ development projects.

Building C!

See: README.md.

Licensing

C! is licensed under the GNU Lesser General Public License version 2.1 or at your option any later version.

Features

This is a partial list of the features of C!: