Vous devez déclarer les variables/instances d'objet aussi localement que possible. Donc, dans ce cas, B serait la meilleure option. Considérons que si vous le déclarez en haut du corps de votre fonction, d'autres personnes lisant votre code pourraient se demander où vous utilisez réellement l'objet. Par conséquent, en ayant la déclaration près de l'endroit où vous l'utilisez réellement, il sera plus facile à lire.
Il ne devrait pas y avoir de différence énorme performance entre les cas A et B.
Il y a des cas particuliers tels que l'allocation de gros morceaux de mémoire ou d'un pool de threads par exemple. Dans ces cas, comme il pourrait s'agir de temps et de consommation de ressources, vous devrez peut-être trouver un meilleur endroit pour les allouer.
Si vous débutez en programmation, vous pouvez lire le livre Scott Meyers, Effective C++. Le point 26 en parle: Reporter les définitions de variables aussi longtemps que possible.
Note de côté, ce sont les deux déclarations de fonction: une fonction appelée 'a' qui ne prend aucun argument et renvoie un' largeobject'. – hmjd
En ce qui concerne la déclaration de la fonction, vous devriez consulter le [C++ FAQ Lite] (http://www.parashift.com/c++-faq-lite/ctors.html#faq-10.2) – maba
Rendez-le lisible en premier. Le compilateur trouvera certainement le code machine le plus optimal dans les deux cas. – tenfour