jesus_christ a écrit :
Il ne parle pas de la directive "inline" mais de inliner un pointeur sur fonction. Et on ne sait pas à quel niveau est son développement, donc comment sais-tu que c'est prématuré ? Peut-être qu'il est entrain d'optimiser un point critique de son programme qu'il a déjà fini et profilé.
Sinon le foncteur est la solution.
Code :
- bool less( int a, int b ) { return a < b; }
- struct Less
- {
- bool operator()( int a, int b ) { return a < b; }
- };
- int* p = ..., *q = ...;
- std::sort( p, q, less );
- std::sort( p, q, Less() );
|
Le deuxième sort sera surement mieux inliné que le premier, mais ça reste à la discrétion du compilateur. Au pire tappe dans la directive __forceinline ou un truc comme ça si tu es sûr de ce que tu fais et que ton compilo est têtu.
|