Next: Número variável de argumentos
Up: Funções
Previous: Passagem por referência
  Sumário
C ++ permite a especificação de valores que argumentos de
função assumirão caso a função seja chamada sem
estes parâmetros -- são os parâmetros default.
O exemplo abaixo ilustra o uso deste mecanismo em uma função
com três argumentos, dois dos quais podem assumir valores
default, mas pelo menos o primeiro deve estar sempre
presente. No corpo da função, há chamadas para a
função com um, dois e três argumentos.
indentation
#include
iostream.h
#include
stdio.h
int get_volume(int length, int width = 2, int height = 3);
main()
{
int x = 10, y = 12, z = 15;
cout
"Some box data is "
get_volume(x, y, z)
begintex2html_wrap_inline$$n";
cout
"Some box data is "
get_volume(x, y)
begintex2html_wrap_inline$$n";
cout
"Some box data is "
get_volume(x)
begintex2html_wrap_inline$$n";
cout
"Some box data is ";
cout
get_volume(x, 7)
begintex2html_wrap_inline$$n";
cout
"Some box data is ";
cout
get_volume(5, 5, 5)
begintex2html_wrap_inline$$n";
}
int get_volume(int length, int width, int height)
{
printf(%4d %4d %4d ", length, width, height);
return length
width
height;
}
O resultado da execução deste programa deve ser:
Some box data is 10 12 15 1800
Some box data is 10 12 3 360
Some box data is 10 2 3 60
Some box data is 10 7 3 210
Some box data is 5 5 5 125
Em alguns compiladores, a saída pode surgir ``embaralhada'' nas
três primeiras linhas. Quando isto acontece, é porque a
rotina de apresentação de dados na função
get_volume é executada antes da apresentação dos
dados na rotina main.
Next: Número variável de argumentos
Up: Funções
Previous: Passagem por referência
  Sumário
Ivan Luiz Marques Ricarte
2001-06-01