Bonjour à toutes et tous,
je me pose une question existentielle sur la meilleure façon de mutualiser le code d'un algo selon qu'il soit "templetisé" ou non.
J'ai une fonction qui code un algo assez compliqué et consommateur de CPU.
Il peut être bien optimisé par le compilateur si certains de ses paramètres sont des puissances de 2 connues à l'avance.
Or, dans 99% des cas, les paramètres en question sont justement des puissances de 2 connues à l'avance.
J'ai donc une implémentation sous forme template qui permet au compilateur d'optimiser un max.
Et une version "générique" avec des paramètres quelconques, pour les rares cas où les paramètres n'ont pas des valeurs "classiques".
Voici un exemple (ou mon algo compliqué a été remplacé par une simple division) :
Ma question :
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Y a-t-il un moyen élégant et cplusplussien de n'avoir qu'un seul exemplaire du code de l'algo (qui est beaucoup plus gros que l'exemple en une ligne donné ici) ?
Merci d'avance !

 

 
		
		 
        

 
			
			

 
 
 
			 
   
 


 Mutualisation de code template et non template
 Mutualisation de code template et non template
				 Répondre avec citation
  Répondre avec citation

 
  
 

 
  
  
 

 
   
						
 
			 
  
 
				 (ou pire : avoir des valeurs connues uniquement à l'exécution qui ne sont pas **forcément** des puissances de deux)
 (ou pire : avoir des valeurs connues uniquement à l'exécution qui ne sont pas **forcément** des puissances de deux)  
						 A méditer: La solution la plus simple est toujours la moins compliquée
A méditer: La solution la plus simple est toujours la moins compliquée
Partager