A função nas linguagens C /C + + é um processo para alcançar algum objetivo. A sintaxe do núcleo e mecanismo de um programa em C + + herda regras básicas da linguagem C original e edifica sobre ele . Defina a função em um objeto C + + ou como uma função global , chamar a função com os valores para cada parâmetro definido. Argumentos para Funções
Definir uma lista de variáveis como parâmetros para a função . Estes são chamados de "argumentos ". Você também pode definir uma função sem parâmetros em tudo : .
ObjectO :: FunctionF (int arg1, arg2 char * , o dobro arg3 ) {//Função corpo //argumentos
C + + resultado varia de acordo com os valores dos argumentos }
Faltando permite que você chamar uma função sem que os seus argumentos definidos . Isso não causa um tempo de compilação , link-time ou tempo de execução erro. Neste caso , a função usa valores padrão para os argumentos em tempo de execução . Fornecer valores padrão para argumentos ali mesmo :
MinhaFuncao void ( duplo d_arg = 0.0 ) {if ( d_arg == 0.0) ... else ...}
sobrecarga de funções
Esta é uma característica muito especial de C + +. Você pode " sobrecarregar" uma definição de função existente com outro. O nome da função permanece a mesma, mas a lista de argumentos é diferente. Utilize este recurso para sobrecarregar funções da biblioteca padrão também, mas somente quando necessário :
eg int MyFunction (int a); int MyFunction ( int a , double b); int MyFunction ();
Aqui , a sintaxe da chamada de função informa ao compilador que MinhaFuncao de pegar. Se você não passar quaisquer argumentos , o terceiro é captado . Se a chamada de função fica assim: . " R_val = MyFunction (12); ", então o compilador usa a segunda definição
Fornecendo valores padrão para argumentos , como mostrado na Seção 2, é um método de atalho sobrecarga de funções , no entanto, ele só funciona em casos simples
sobrecarga Construtores objeto
O verdadeiro poder da sobrecarga de funções em C + + é no construtor sobrecarga. . Definir o construtor de um objeto em duas ou mais formas. Em outras palavras, permitir que o chamador para criar o objeto de diferentes maneiras por diversos motivos - como retro-compatibilidade, portabilidade ou flexibilidade. Construtor para objeto MyObject é nomeado " MyObject (). " Por exemplo :
data classe {int dia, mês e ano;
público : data void ( char * C_DATE ); vazio data (int mm , int dd, int aa) , data void ( );
...
}
na versão mais antiga deste software , o " Data " objeto foi criado usando uma seqüência digitada pelo usuário . Na próxima versão , o mês , dia e ano foram aprovadas separadamente para evitar a verificação rígida formato . A partir da data de publicação , os programadores não dependem de o usuário em tudo, mas ir buscar ou calcular a data usando o relógio do sistema , no processo de criação do objeto " data". Crie o objeto no programa:
Método A: date (" 10/10/2011 "); Método B: data ( 10, 10, 2011); Método C: date () ;
Se você está familiarizado com a versão mais antiga do software, e nos deparamos com um programa do usuário que chama data sem argumentos , você pode estar perplexo de como o compilador permitiu isso. A explicação é a sobrecarga de função .