Problem

1/1

Padrões: Iniciar

Theory Click to read/hide

Como o STL é um conjunto de classes de modelo C++, saber como essas classes são estruturadas é desejável para trabalhar com o STL.
C++ adicionou duas novas palavras-chave para dar suporte a modelos: "template"; e "nome do tipo". Usando-os, você pode escrever uma função genérica que será expandida para os tipos necessários em tempo de compilação. Por exemplo, uma função de modelo para obter o máximo de dois valores:

modelo <nome do tipo T>
T myMax(T x, Ty)
{
   retorno (x > y)? x: y;
}
  
int main()
{
  cout << myMax<int >(3,  7) << endl;
  cout << myMax<duplo >(3,0,  7.0) << endl;
  cout << myMax<char >('g', 'e') << endl;
  
  retorno 0;
}

 

Problem

Crie uma função de modelo para implementar o Bubble Sort.
 
Exemplos
# Entrada Saída
1 5
5 4 3 2 1
1 2 3 4 5