dimanche 1 novembre 2015

Efficiently Using A Function Output

I have been attempting to learn C++ over the past few weeks and have a question regarding good practice.

Let's say I have a function that will produce some object. Is it better to define the function to produce an output of type object, or is it better to have the function be passed an object pointer as an argument such that it can modify it directly?

I suppose this answer is dependent on the scenario, but I'm curious if efficiency comes into play. When passing objects into a function as an argument, I know it is more efficient to use const reference such that the function has immediate access to the object with no need of generating a copy.

Does such concern of efficiency come into play when outputting function results?

Aucun commentaire:

Enregistrer un commentaire