I'm constantly moving away from OOP over the years. The idea of inheritance never made much sense to me - it just complicates things and forces you to make decissions about software design. To me that's just blah blah and i prefer to spend this time on solving real problems.
So i ended up using C with classes style, but i moved away from that too, mainly because of this:
Class member functions hide some of the data they use because you don't know what member variables they access without looking at the implementation.
This way it's hard to see data complexity, which is important to optimizing / refactoring.
Often i ended up making member functions static, forcing me to add all data to the function parameters - just to see how many there are (ALWAYS more than you would expect).
Next i realized that static member functions can be used from anywhere, how practical.
So why did i still using classes?
My answer was simply: To group related functions together by 'topic', so i cand find them somehow.
But there is something better to do this: Namespaces.
With namespaces it's possible to group stuff in hirarchies without any restrictions or problems known from inheritance.
Today i create a classes very rarely, using them only as an interface to a large system which is implemented mostly procedural under the hood.
But i still use a lot of small structs with member functions for trivial functionality like indexing arrays or un/packing.