57Fermer59
Pen^2Le 24/02/2011 à 18:00
iwannabeamaki (./55) :
Pen^2 (./54) :
Bien sûr qu'il faut optimiser quand il y a besoin (grin) mais c'est loin d'être souvent le cas. Et d'ailleurs, je pense que ce qui rame est plus le new que le throw. Ça reste à tester en tout cas.

En C# tu es obligé de créer l'objet que tu throw, donc de mettre un new. En Java je sais pas, mais j'aurais tendance à penser que oui. À mon avis dans ces langages, où tous les objets sont de toutes façons instanciés avec un "new" (contrairement au C++ où tu peux choisir si tu veux mettre ton objet sur la pile ou sur le tas), ce n'est pas le new qui coute le plus cher. Mais ça peut être intéressant à tester, si tu arrives à dissocier les deux ^^
Je suis tout à fait certain que tu peux dissocier les deux, je le fais très souvent.
Et l'instanciation en boucle coûte cher, ne serait-ce que parce que ça pourrit le tas et que ça déclenche le GC.