image

Bootcamps ilimitados e +650 cursos pra sempre

60
%OFF

AA

Arthur Araújo14/10/2025 09:52
Compartilhe

O Operador Ternário em C++

    O Operador Ternário em C++

    Introdução

    O operador ternário é uma forma curta e elegante de escrever estruturas condicionais em C++. Ele é uma alternativa ao if-else, permitindo que você faça uma escolha entre duas expressões em uma única linha de código. Em muitas situações, o operador ternário torna o código mais limpo e legível, especialmente quando a lógica condicional é simples.

    Sintaxe

    A sintaxe básica do operador ternário é:

    condição ? expressão_se_verdadeira : expressão_se_falsa;
    
    • condição → é uma expressão booleana (retorna true ou false).
    • expressão_se_verdadeira → é executada se a condição for verdadeira.
    • expressão_se_falsa → é executada se a condição for falsa.

    Exemplo Básico

    Veja um exemplo simples de uso:

    #include <iostream>
    using namespace std;
    
    int main() {
      int a = 10, b = 20;
      int maior = (a > b) ? a : b;
      cout << "O maior valor é: " << maior << endl;
      return 0;
    }
    

    Explicação:

    • A expressão (a > b) é avaliada.
    • Se for verdadeira, o valor de a é atribuído a maior.
    • Caso contrário, o valor de b é atribuído.

    Comparando com if-else

    O mesmo código anterior poderia ser escrito assim:

    int maior;
    if (a > b)
      maior = a;
    else
      maior = b;
    

    Ambos os códigos fazem a mesma coisa.

    A diferença é que o operador ternário é mais compacto, ideal para decisões simples.

    Exemplo com cout

    Também é possível usar o operador ternário diretamente em uma saída de dados:

    #include <iostream>
    using namespace std;
    
    int main() {
      int idade;
      cout << "Digite sua idade: ";
      cin >> idade;
    
      cout << (idade >= 18 ? "Maior de idade" : "Menor de idade") << endl;
      return 0;
    }
    

    Cuidados e Boas Práticas

    Embora o operador ternário seja útil, ele não deve ser usado em situações complexas, pois pode comprometer a legibilidade.

    Por exemplo, evite isto:

    resultado = (x > y) ? ((x > z) ? x : z) : ((y > z) ? y : z);
    

    Esse tipo de aninhamento é difícil de ler.

    Nesses casos, prefira o uso de if-else tradicionais.

    Dica Extra: O Operador Ternário também Retorna Valor

    O operador ternário retorna um valor, o que significa que ele pode ser usado em expressões e atribuições:

    int x = 5;
    int y = 10;
    int resultado = (x == y) ? 0 : (x + y);
    

    Aqui, resultado recebe:

    • 0 se x for igual a y;
    • ou x + y se forem diferentes.

    Conclusão

    O operador ternário (?:) é um recurso poderoso do C++ que permite escrever condições curtas e diretas. É ideal para decisões simples, ajudando a tornar o código mais conciso. Entretanto, é importante não abusar dele em expressões longas ou complexas, para manter a clareza do código.

    Compartilhe
    Recomendados para você
    Cognizant - Mobile Developer
    Luizalabs - Back-end com Python
    PcD Tech Bradesco - Java & QA Developer
    Comentários (1)
    DIO Community
    DIO Community - 14/10/2025 11:16

    Excelente, Arthur! Que artigo super claro e conciso sobre o Operador Ternário em C++! É fascinante ver como você aborda o tema, mostrando que o operador ternário (?:) é uma forma curta e elegante de escrever estruturas condicionais, tornando o código mais limpo e conciso.

    Você demonstrou perfeitamente a sintaxe básica (condição ? expressão_se_verdadeira : expressão_se_falsa;) e a diferença crucial com o if-else tradicional.

    Qual você diria que é o maior desafio para um desenvolvedor ao trabalhar com o Princípio da Responsabilidade Única (SRP), em termos de evitar que uma classe assuma muitas responsabilidades e se torne um "Deus Objeto", em um projeto que cresce rapidamente?