Programar em C++/Por que C++?

Imagine que você deve fazer um programa para fazer a máquina de um pequeno relógio de pulso funcionar, então você pensa:

  • Bom, isso pode ser feito com Assembly...
  • Porém, pensando melhor, você decide mudar de linguagem quando você pondera.
  • O problema maior é que se eu tiver que mudar o processador do relógio, vou ter que refazer o programa. É melhor usar linguagem "C".
  • Depois você termina por avaliar outra possibilidade:
  • Bem, se eu já estou pensando em "C" é melhor usar "C++", depois vai ser mais fácil de entender o código, reaproveitar em outras coisas e ainda vai ser mais fácil de expandir para outros modelos de relógio.

E assim é o que podemos perceber como C++ é poderosa, flexível e abrangente. Ela pode ser usada para programar qualquer tipo de hardware, desde os mais simples até os mais complexos. Além disso, C++ é uma linguagem que gera programas em código de máquina, que funcionam com ou sem a participação de sistemas operacionais no dispositivo.

Alguns profissionais afirmam que C++ é a linguagem mais poderosa que existe, veja algumas características dela:

  • É um superconjunto da linguagem C, e contém vários melhoramentos;
  • Deu origem a grandes linguagens como Java e D;
  • É a porta para a programação orientada a objetos;
  • C++ pode virtualmente ser efetivamente aplicado a qualquer tarefa de programação;
  • Há vários compiladores para diversas plataformas tornando a linguagem uma opção para programas multiplataforma.

A linguagem C++ é utilizada em projetos como:

Até ao momento foram realizadas 3 grandes revisões à linguagem:

  • 1ª em 1985;
  • 2ª em 1990;
  • 3ª em 1998 a que deu origem ao ANSI \ ISO standard a que ficou comummente denominada de Standard C++. Esta versão é suportada por todos os compiladores C++ famosos incluindo Microsoft’s Visual C++, Borland’s C++ Builder e GCC. Esta foi revista em 2003.

C++ é considerada uma linguagem que está entre linguagem de alto nível (em inglês, high level language) e linguagem de baixo nível (em inglês, low level language). Dito de outra forma, é uma linguagem que está próxima da linguagem humana (linguagem de alto nível), mas ao mesmo tempo permite estar próximo da maneira como o computador processa, próximo do Assembly (uma linguagem de baixo nível).