Onde foi criado C++
Na década de 1980, Bjarne Stroustrup queria criar uma versão distribuída do Kernel Unix. Por ser uma tarefa demasiadamente complexa, ele queria escolher uma linguagem que trouxesse facilidades na hora de escrever o código, mas ao mesmo tempo performática.
Bjarne Stroustrup começou a adicionar funcionalidades de código à linguagem C. Assim, C++ (chamado na época de C with Classes) foi criado para ser uma linguagem com ótima performance, porém com recursos de alto nível suficientes a ponto de facilitar o desenvolvimento de sistemas complexos.
C++ é uma das linguagens mais versáteis que existem, permitindo desenvolver desde tarefas simples como aplicações na linha de comando ou web, até sistemas complexos de tempo real, muito usadas no mercado financeiro.
Mas nem tudo que é possível de se fazer em C++ é pertinente. Se fizermos uma simples página da web que recebe dados na URL e os exibe, por exemplo, teriamos um código complexo para uma tarefa tão simples em outras linguagems
Onde é mais usado?
C++ é uma linguagem incrivelmente versátil, mas ela se destaca como líder nos seguintes cenários de
•Jogos;
•Mercado financeiro;
•Grandes aplicações
•Navegadores;
•Softwares multimídia;
•Pacotes Office;
•Sistemas operacionais;
Diferença entre C e C++
Embora C e C++ sejam linguagens de programação relacionadas, existem diferenças significativas entre elas. Aqui estão algumas das principais diferenças:
•Paradigma de programação: C é uma linguagem de programação procedural, enquanto C++ suporta tanto a programação procedural quanto a programação orientada a objetos. C permite a criação de funções e estruturas de dados, enquanto C++ adiciona recursos como classes, objetos, herança, polimorfismo e encapsulamento.
•Manipulação de memória: Em C, o gerenciamento de memória é feito manualmente usando funções como `malloc( )` e `free( )`. Em contraste, C++ oferece recursos de gerenciamento de memória automático por meio do conceito de construtores e destrutores, bem como do uso de "new" e "delete" para alocação e desalocação de memória.
•Sobrecarga de operadores: C++ permite a sobrecarga de operadores, o que significa que os operadores existentes podem ser redefinidos para uso com objetos de classe. Isso oferece mais flexibilidade e expressividade ao escrever código C++.
•Manipulação de strings: C++ oferece uma classe string embutida que facilita a manipulação de strings. Em C, as strings são tratadas como arrays de caracteres e requerem manipulação manual.
•Bibliotecas padrão: C++ possui uma biblioteca padrão mais extensa do que C. A biblioteca padrão do C++ inclui recursos para manipulação de strings, contêineres de dados, algoritmos, entrada/saída, manipulação de arquivos e muito mais. Embora C também tenha uma biblioteca padrão, ela é mais limitada em termos de recursos disponíveis.
•Compatibilidade: O código escrito em C é geralmente compatível com C++. No entanto, o oposto nem sempre é verdadeiro. Devido aos recursos adicionais e à sintaxe diferenciada de C++, nem todo código C++ pode ser compilado como código C sem modificações.
•Orientação a objetos: C++ é amplamente conhecido por suportar programação orientada a objetos. Essa abordagem permite a criação de classes, objetos, herança, polimorfismo e encapsulamento. Em C, por outro lado, a programação orientada a objetos não é suportada nativamente.