I just figured that the whole stuff I have recently done is actually Object Oriented Programming, but the whole thing is in C & MEX (C89, to be accurate, and MEX is a cross of MATLAB and C, mainly C but sporting some cute functions from MATLAB and retaining full MATLAB functionality). I wrote the whole thing as a library of functions that is interacted with integer numbers which tell the library what it is supposed to do, if supplemented with necessary information - which would be arrays and arrays of doubles - from the requester's side. Currently it works pretty nicely, and is sufficiently fast. As before, computational speed is crucial in all of my cases. For those wondering, the question is about ray-tracing.
I have never had any C++ Object Oriented programming course, neither do I know what those fancy Class and Template thingies are. But my question for C++ programmers here would be that how much of a performance penalty can I expect using those fancy Classes and Templates to do the same thing? I'm pretty sure there is some overhead involved, since now I can do the whole thing with integer numbers.