object oriented programming in C

I’m looking at the source code for Evolution, and I have a basic design question. Why would someone choose to implement object oriented programming code in C, over say C++? It seems like it’s just an additional hassle where you have to include a pointer equivalent to “this” at the beginning of every class method, and all the function names are longer, and you have to handle function pointers yourself instead of allowing the language features to handle them. Are there other benefits to C that I am missing?

Maybe C over C++ has big differences in performance and in optimization?