retour par référence

retour par référence - C++ - Programmation

Marsh Posté le 20-10-2009 à 20:27:22    

Code :
  1. Obj& function()
  2. {
  3. return instance;
  4. }
  5. Obj & o = function();
  6. vs
  7. Obj o = function();


 
ça revient au même ? une copie inutile est faite ?
merci


---------------
.
Reply

Marsh Posté le 20-10-2009 à 20:27:22   

Reply

Marsh Posté le 20-10-2009 à 21:41:51    

ca depend. Deja j'aurais tendance à renvoyer un Obj const&

Reply

Marsh Posté le 20-10-2009 à 21:54:59    

sous visual par exemple


---------------
.
Reply

Marsh Posté le 20-10-2009 à 21:55:44    

franchement je suis paumé niveau copie effectué entre, RVO, référence ,optimisation des compilateurs etc, c'est n'importe quoi pour si retrouver


---------------
.
Reply

Marsh Posté le 20-10-2009 à 22:12:27    

t'as surtout ps a t'en soucier avant d'avoir bencher hein. Donc ecris de strucs simples, bench et avises

Reply

Marsh Posté le 20-10-2009 à 22:14:04    

tu conseilles quoi pour bench ? y a des soft pour faire ça ?


---------------
.
Reply

Marsh Posté le 20-10-2009 à 22:14:40    

gprof :€

Reply

Marsh Posté le 20-10-2009 à 22:19:44    

et si on compile avec visual ?


---------------
.
Reply

Marsh Posté le 20-10-2009 à 22:32:50    

Visual Studio a un profiler intégré (Tools > Performance Tools), je suggère d'aller regarder la doc voir comment il fonctionne.


Message édité par masklinn le 20-10-2009 à 22:33:48

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 21-10-2009 à 12:50:28    

C'est uniquement dans la version Team System.

Reply

Marsh Posté le 21-10-2009 à 12:50:28   

Reply

Marsh Posté le 21-10-2009 à 16:22:56    

ouais, enfin, utiliser des performance counters comme on en a parlé un paquet de fois ici même pour profiler, ca va pas trop mal, hein


---------------
last.fm
Reply

Marsh Posté le 21-10-2009 à 19:36:52    

TheSamFrom1984 a écrit :

C'est uniquement dans la version Team System.


JE CONFIRME  :fou:


---------------
.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed