Whats better? C++ Components or classes?

Like Sveitar said, outsourcing code to components can be a good idea if you want to reeuse that functionality on other actors. Sometimes components, like the character movement component, are only meant to be used with one specific actor class. That can make sense if you want cleaner code and pull functionality apart, which could for example make sense if you add an inventory management component to your character. However I would not use it to outsource certain functions that are only called rarely, because acessing the component from the actor and then the actor from the component function probably makes it more complicated than just having the function on the actor class, plus you could also add a seperate .cpp file for specific function bodies like done with the Actor class and ActorReplication.cpp.