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