Operadores unários em c ++
Video: Operadores de atribuição em C
o operadores unários em C ++ são os operadores que têm um único argumento. Os operadores matemáticos unary são -, ++ e -. O operador de subtração muda o sinal de seu argumento. Um número positivo se torna negativo, e um número negativo torna-se positivo:
int n = 10-int m = -n- // m é agora -10
o ++ e a - operadores de aumentar e diminuir os seus argumentos a um.
Video: Fazendo sobrecarga de operadores no Cpp/C++
Os operadores de incremento e decremento são únicos em que eles vêm em duas versões: a prefixo e uma postfix versão.
A versão prefixo de incremento é escrito ++n, enquanto o postfix está escrito n ++.
Ambos os operadores de prefixo e incremento postfix incrementar seu argumento por um. A diferença está no valor retornado. A versão prefixo retorna o valor após a operação de incremento, enquanto o postfix devolve o valor antes do incremento. (O mesmo é verdade para o operador de decremento.) Isto é demonstrado no seguinte IncrementOperator programa:
// IncrementOperator - demonstrar as operador de incremento # incluem#incluir #incluir usando espaço de nomes std-int principal (int nNumberofArgs, char * pszArgs []) {// demonstrar a operatorint incremento de N - // primeiro a prefixn = 1-cout lt; lt; "O valor de n é " lt; lt; n lt; lt; endl-cout lt; lt; "O valor de n é ++ " lt; lt; n ++ lt; lt; endl-cout lt; lt; "O valor de n depois é " lt; lt; n lt; lt; endl-cout lt; lt; endl - // agora o postfixn = 1-cout lt; lt; "O valor de n é " lt; lt; n lt; lt; endl-cout lt; lt; "O valor de n é ++ " lt; lt; n ++ lt; lt; endl-cout lt; lt; "O valor de n depois é " lt; lt; n lt; lt; endl-cout lt; lt; endl - // espera até que o usuário está pronto antes de terminar o programa // para permitir que o usuário veja o resultscout programa lt; lt; "Pressione Enter para continuar ..." lt; lt; endl-cin.ignore (10, `n`) - cin.get () - 0-} retornar
A saída deste programa aparece da seguinte forma:
O valor de n é o valor 1O de ++ n é o valor 2O de n depois é valor 2O de n é o valor 1O de n ++ é valor 1O de n depois é 2Carregue Enter para continuar. . .
Este exemplo demonstra tanto o prefixo e incremento postfix. Em ambos os casos, a variável n é inicializado para 1. Note-se que o valor de n tanto depois de executar ++n e n ++ é 2. No entanto, o valor de ++n foi de 2 (o valor após o incremento), enquanto o valor de n ++ era 1 (o valor antes do crescimento).