Você pode sobrecarregar funções modelados como você pode funções normais. Desta forma , um nome de função pode lidar com tipos de dados genéricos e um número variável de parâmetros , desde que os parâmetros são do mesmo tipo de dados . O programador tem menos a pensar sobre como o compilador trata da verificação de tipo e corresponde a uma chamada de função para uma assinatura função. Modelo de sobrecarga de funções ajuda a aumentar a captação de utilização da função . Coisas que você precisa 
 avançada C + + conhecimento 
 compilador C + + com IDE, como o Visual Studio 2008 
 Show Mais instruções 
 1 
 comentário como usar modelos de função em C + + se o seu fundamento sobre modelos é instável. Você deve saber antes de templates você pode tentar este tutorial. 
 2 
 Use a palavra-chave " classe" ou " nome_do_tipo " no modelo para especificar os tipos genéricos. As duas palavras-chave têm uso diferente. Mas, para os fins deste tutorial, não importa qual palavra-chave que você usa. 
 3 
 Sobrecarga de um modelo função quantas vezes existem argumentos de entrada que você deseja que ele processar . Você deve fazer isso na declaração , bem como a definição. O exemplo abaixo mostra as três declarações de uma função , que pode imprimir 1-3 tipos de dados do mesmo tipo para a saída padrão : 
  modelo 
 imprimir void ( const T t1) ; 
 template < br > Imprimir void ( const T t1, const T t2) ; modelo dos convites 
 Imprimir void ( const T t1, const T t2, const T t3) ; 
 4 
 implementar os algoritmos sobrecarga da seguinte forma: 
  modelo 
 Imprimir void ( const T t1) { cout 
 } modelo dos convites 
 Imprimir void ( const T t1, const T t2) {
 cout } modelo dos convites 
 Imprimir void ( const T t1, const T t2, const T t3) { } cout 
 
 5 
 chamada Print () a partir de main () , sobrecarregando-a com um a três parâmetros e usando qualquer tipo de dados fundamental. Note que você pode chamar a função com ou sem colchetes ou tipo de especificação : 
  int main () { 
 impressão ( 4.f ) //imprime um flutuador 
 Imprimir < > (23 , 37 ) //imprime dois inteiros 
 impressão ( 'c' , 'o' , 'm' ) //imprime três caracteres 
 } 
 < br >