Para usar a função max () da biblioteca do algoritmo C ++, o programa deve começar com algo com a biblioteca de algoritmo incluída como:
#incluirExistem quatro formas principais sobrecarregadas dessa função máxima e este artigo explica como usá -las.
modeloEsta função leva dois argumentos do mesmo tipo e retorna o maior de ambos. Se ambos são iguais em valor, a primeira ocorrência é retornada. O programa a seguir ilustra seu uso:
#incluirA saída é E.
modeloEsta função sobrecarregada é semelhante ao acima, mas o programador definiu sua própria função de comparação. A função sobrecarregada acima usa a função de comparação padrão. A definição de uma função de comparação, que faz a mesma coisa que a função de comparação padrão é:
Bool Compfn (char a, char b)São necessários dois valores, que podem ser de uma lista, então seus retornos verdadeiros, se o primeiro for menor que o segundo, então é falso. Nesta função, 'A' é o primeiro valor e B é o segundo valor. Na sintaxe da função max () do título desta seção, o primeiro argumento é 'a' e o segundo argumento é B, enquanto o terceiro argumento é o nome da função de comparação sem os parênteses e argumentos.
Observe que o tipo dos argumentos da função de comparação é o mesmo que o tipo de argumentos na função max ().
O programa a seguir com uma função definida por programador tem o mesmo efeito, do programa acima:
#incluirA saída é, e. Se 'c' fosse digitado antes de 'e' como argumentos na função max (), a saída ainda teria sido 'e'.
modeloEm C ++, um Initializer_list é a matriz literal. Este formulário sobrecarregado retorna o maior valor em um Initializer_list. O programa a seguir ilustra o seguinte:
#incluirA saída é, e.
modeloEsta função sobrecarregada é semelhante ao código acima, mas precisa de uma função de comparação. A função de comparação acima pode ser usada como ilustrado no seguinte programa:
#incluirA saída é, e.
Função máxima personalizada
O programador pode escrever sua própria função max (). A estratégia é realmente fazer a comparação na função.
Máximo de dois valores
O programa a seguir mostra como determinar o valor máximo de dois valores:
#incluirMáximo em uma lista
Um programa personalizado também pode ser escrito para encontrar o valor máximo em uma lista. A estratégia é a seguinte:
Presume -se que o primeiro elemento seja o elemento máximo na lista. Se o primeiro elemento for menor que o próximo elemento, o próximo elemento se tornará o novo máximo, caso contrário, o primeiro elemento permanece o máximo. Se o máximo assumido for menor que o elemento depois, o elemento depois se tornará o novo máximo, caso contrário, o antigo máximo permanece. Esta comparação continua até o final da lista. O programa a seguir ilustra o seguinte:
#incluirA saída é, e. A primeira declaração na função max personalizada obtém o máximo assumido, no formulário:
char maxval = arr [0];O próximo segmento de código é um loop para. Dentro do loop for, é um consumo de IF, que faz a comparação e a atribuição, à medida que a digitalização através da matriz continua.
Na função principal do C ++, a primeira declaração declara a matriz, cujo elemento máximo é necessário. A segunda declaração chama a função max personalizada. A declaração depois, imprime o valor máximo na lista.
Conclusão
Sem escrever uma função máxima personalizada. Para obter o valor máximo de dois valores, ou de mais de dois valores em uma lista, use uma função apropriada abaixo:
modeloEssas funções sobrecarregadas estão todas na biblioteca de algoritmo.