Object Oriented C toolkit, or shortly ooc has been created with the intention to enable to write object oriented code easily using standard ANSI-C, with all the possible type checks. It is very important being ANSI-C compliant, because the main goal was the portability even for systems that lack a C++ compiler.
The other goal was keeping it lightweight, being able to port it onto small computers as well, like embedded systems. The implementation has a C++ like approach, using classes, objects, and exceptions. The ooc also incorporates single inheritance and with the help of interfaces and mixins a kind of multiple inheritance.
There are many similar kits out there, but I found most of them either too complicated for writing a fully controllable, really portable code, or inconvenient to use it for writing readable programs. So I have started from scratch.
The ooc toolkit comes with some container classes, a unit testing helper class and a tool that let’s you generate classes from several templates easily.
In this manual I will cover only issues related to the implementation and use of ooc, I assume that the reader is familiar with the Object Oriented Programming and has a good knowledge about C and C++ and their most common internal implementation.
More detailed information on the use of ooc can be found in the ooc API documentation.