Axel Schreiner's book _Object Orientated Programming with ANSI C_ was published in 1994 and OO easily predates that by a good few years in the mainstream.
Schreiner is the German translation of Kernighan's books and this one is a nice example of using a preprocessor for C, written in awk, to gradually add OO to C so you can understand all the nuts and bolts under the hood of a "native" OO language. English translation PDF available for download. http://www.cs.rit.edu/~ats/books/index.html http://www.cs.rit.edu/~ats/books/ooc.pdf