C ++: histórico, características, tipos de dados, exemplos

C ++: histórico, características, tipos de dados, exemplos

C ++ é uma versão aprimorada e estendida da linguagem de programação C, desenvolvida pela Stroustrup em 1979 como parte de seu projeto de doutorado. Stroustrup projetou o que chamou de “C com classes”, que mais tarde foi chamado de C ++, porque acreditava que as linguagens de programação existentes tinham limitações e não eram melhores para projetos de grande escala.

Então ele usou C para desenvolver a linguagem de programação que procurava, porque C era uma linguagem eficaz e rápida em sua operação.

C ++ é uma linguagem de programação de uso geral refinada e eficaz. Essa linguagem de formato livre compilada é mais adequada para programadores de nível intermediário.

No entanto, aqueles que desejam começar a programar com C ++ descobrirão que podem aprender rapidamente conceitos de programação que os levarão a um longo caminho em sua carreira.

Ele suporta programação orientada a objetos, tendo todos os seus recursos. Esses conceitos tornam a linguagem C ++ diferente e são usados ​​principalmente para desenvolver aplicativos de maneira fácil e conceitual.

História

Design e implementação

O C ++ foi projetado e implementado em 1980 por Bjarne Stroustrup, da AT&T Bell Labs, combinando lindamente os conceitos de programação processual e orientada a objetos.

Na linguagem C, o operador ++ é usado para incrementar uma variável, expressando assim a idéia de Stroustrup de que o C ++ era a próxima geração da linguagem C.

lançamento inicial

O C ++ foi lançado em 1985 pela primeira vez no mercado. Em 1986, Stroustrup publicou seu famoso livro chamado The C ++ Programming Language , tornando-se o manual de referência da linguagem.

C 2.0

A versão mais importante do C ++ foi o C 2.0 em 1989, documentado por Ellis e Stroustrup no The C ++ Annotated Reference Manual . Era uma linguagem totalmente orientada a objetos.

Versão padronizada

A primeira versão padronizada, C ++ 98, foi lançada em 1998. Esse padrão internacional para C ++ foi desenvolvido pelo American National Standards Institute (ANSI) e pela International Standards Organization (ISO).

Em 2003, o seguinte padrão C ++ 03 foi lançado com a intenção de corrigir os bugs identificados no C ++ 98 e garantir que a linguagem tivesse maior portabilidade e consistência.

Atualizações recentes

A próxima atualização de idioma importante veio em 2011 e foi denominada C ++ 11. Vários recursos foram adicionados para melhorar seu desempenho em tempo de execução.

Em seguida, o C ++ 14 foi lançado, onde foram feitas algumas melhorias e os bugs do C ++ 11. A próxima versão lançada em 2017 foi o C ++ 17, que possui vários novos recursos e uma biblioteca padrão muito mais extensa.

Recursos do C ++

Idioma de uso popular

O C ++ é amplamente utilizado entre desenvolvedores, principalmente em aplicativos. Ele contém todas as partes importantes, como uma linguagem central que fornece todos os blocos de desenvolvimento necessários, como variáveis, tipos de dados, literais, etc.

É a quarta linguagem de programação mais popular, de acordo com o índice da comunidade de programação TIOBE.

Os usos do C ++ tornam a linguagem mais conveniente, devido às suas características. É a primeira linguagem de inicialização para qualquer desenvolvedor que esteja interessado em trabalhar com linguagens de programação. É fácil aprender, pois é uma linguagem puramente baseada em conceitos.

Sua sintaxe é muito simples, facilitando a digitação e os erros podem ser facilmente replicados. Antes de usar qualquer outra linguagem, os programadores preferiram aprender C ++ primeiro e depois usar outros posteriormente.

No entanto, a maioria dos desenvolvedores tenta manter o C ++ devido à sua grande variedade de uso e compatibilidade com várias plataformas e software.

Relacionado:  Destaques das 14 plantas industriais do Peru

Orientado a Objeto

A principal atualização do C para o C ++ é a programação orientada a objetos. Isso significa que o foco está nos “objetos” e na manipulação em torno desses objetos.

Segue os conceitos de polimorfismo, herança, encapsulamento e abstração, facilitando o desenvolvimento e a manutenção.

Procedural

O C ++ suporta o conceito de procedimentos e sub-rotinas, que incluem segmentos de código em blocos reutilizáveis, que podem ser “chamados” para executar tarefas individuais.

Procedimentos e sub-rotinas são conhecidas como funções em C ++. Uma função pode assumir zero ou mais parâmetros e retornar zero ou um valor.

Programação estruturada

O código em C ++ é modular, com suporte de funções, classes e objetos, acoplando livremente os módulos.

As instruções de controle de fluxo em C ++ são semelhantes às encontradas em muitas outras linguagens de programação estruturada. Estes são if-else para implementar a lógica de decisão e, durante, while e do-while para implementar iterações ou loops.

Gerenciamento de memória

C ++ suporta alocação de memória dinâmica . Assim, você pode liberar a memória alocada a qualquer momento.

Ponteiros

São variáveis ​​que armazenam o endereço de outra variável. O ponteiro aponta para o local da memória de uma variável. O C ++ suporta ponteiros para fornecer soluções para muitos problemas que exigem acesso aos locais de memória.

Linguagem compilada

Antes de poder executar, um programa C ++ deve ser convertido nas instruções nativas da máquina de destino por um programa chamado compilador. Sem compilação, nenhum programa C ++ pode ser executado. O compilador compila o programa C ++ para que ele possa ser executado.

Tipos de dados em C ++

– Primário

Int

É usado para armazenar números inteiros. A memória que ocupa depende do compilador (32 ou 64 bits). Ele ocupa 4 bytes de memória ao trabalhar com um compilador de 32 bits.

Flutuador

É usado para armazenar frações de até 7 dígitos decimais. É conhecido como um tipo de ponto flutuante de precisão única. Ocupa 4 bytes de memória.

Caracteres

É usado para armazenar um conjunto de todos os caracteres. Pode incluir letras do alfabeto, números e também caracteres especiais. Ele ocupa 1 byte de memória, sendo a menor unidade endereçável em uma máquina.

em dobro

É usado para armazenar frações de até 15 a 16 dígitos decimais. É geralmente conhecido como um tipo de ponto flutuante de precisão dupla.

Vazio (nulo)

Indica zero ou nenhum valor de retorno. Geralmente usado para atribuir valor nulo ao declarar uma função.

Bool

Este tipo de dados refere-se a um valor booleano ou lógico. Pode levar o valor de verdadeiro ou falso.

– Secundário

Arranjos

É um conjunto de dados que possui o mesmo tipo de dados, que é acessado através de um nome comum.

Ponteiros

Eles são basicamente variáveis ​​usadas para armazenar o endereço de memória de outra variável.

Recursos

É um grupo de instruções que executam uma tarefa específica. Funções são bibliotecas internas ou definidas pelo usuário.

– Usuário definido

Estruturas

É um tipo de dados no qual você pode fazer uma coleção de diferentes tipos de dados e acessá-los através de um objeto.

União

Oferece a possibilidade de armazenar diferentes tipos de dados no mesmo local de memória.

O que é C ++? Formulários

Formulários

Muitos aplicativos dos sistemas Adobe são desenvolvidos em C ++, como Illustrator, Photoshop, Adobe Premiere e Image Ready.

Relacionado:  Variável (programação): características, tipos, exemplos

Sistemas operacionais

O C ++ é usado em todos os principais sistemas operacionais, como Linux, Windows e macOS, pois é uma linguagem de programação de baixo nível.

Compiladores

A maioria dos compiladores é escrita na linguagem C ++. Além disso, os compiladores usados ​​para compilar outras linguagens, como C #, Java etc.

Jogos

Serve para cancelar a complexidade dos jogos 3D, ajudando a otimizar recursos. Além disso, ele suporta a opção multiplayer em redes.

Navegadores da Web

Ele permite uma rápida execução e representação de gráficos, o que é fundamental para os usuários atuais, que exigem conteúdo que possa aparecer rapidamente nos navegadores da web. O C ++ foi usado para tornar os navegadores da Internet Google Chrome e Mozilla Firefox.

Internet das Coisas

Vários produtos da Internet das Coisas, como relógios inteligentes, carros, lavadoras, roteadores e comutadores, usam C ++ porque exigem código o mais próximo possível do hardware.

Sistemas distribuídos / em nuvem

É usado na nuvem em sistemas de armazenamento e sistemas distribuídos, onde os sistemas de arquivos escaláveis ​​precisam trabalhar em estreita colaboração com o hardware e a compatibilidade com diferentes máquinas também é crítica.

Acesso a bancos de dados

É usado para desenvolver software de banco de dados de código aberto. Um software de administração de banco de dados muito popular usado nas organizações, o MySQL, é escrito em C ++, graças aos benefícios que oferece.

Existem outros aplicativos baseados no acesso ao software de banco de dados, que são Wikipedia, Yahoo, YouTube, Quora, etc.

Exemplos

Este programa recebe um número inteiro positivo do usuário e o armazena na variável n. Em seguida, o loop for é executado, que verifica se o número digitado é perfeitamente divisível por i ou não.

O ciclo for começa com um valor inicial de i igual a 2, aumentando o valor de i em cada iteração. Se o número digitado pelo usuário for perfeitamente divisível por i, isPrime será atribuído false e o número não será um número primo.

No entanto, se o número não for perfeitamente divisível por i até que a condição de teste i <= n / 2 seja verdadeira, significa que é divisível apenas por 1 e pelo mesmo número. Portanto, o número fornecido é um número primo.

Bibliotecas

Os desenvolvedores têm acesso a muitas funções internas fornecidas pela linguagem C ++. Isso economiza tempo e agiliza o desenvolvimento. Alguns dos arquivos de cabeçalho C ++ com suas funcionalidades fornecidas são:

– iomanip: Contém manipuladores de fluxo que formatam fluxos de dados.

– iostream: contém funções padrão de entrada e saída.

– cstdlib: contém a função de converter números em texto e vice-versa,

– cmath: Contém funções da biblioteca matemática, alocação de memória, números aleatórios e várias outras funções úteis.

– fstream: Contém funções que executam a entrada e saída de arquivos no disco.

– ctime: contém a função para gerenciar a hora e a data.

– memória: contém classes e funções usadas pela biblioteca padrão C ++ para alocar memória.

Vantagem

Rapidez

Como o C ++ é uma versão estendida do C, que é uma linguagem de programação de baixo nível, é uma das linguagens mais rápidas disponíveis. Isso o torna útil nas áreas em que o desempenho necessário é crítico.

Perto de hardware

C ++ é uma das linguagens de programação mais próximas ao hardware. Isso é muito vantajoso nos espaços em que o software deve ter um relacionamento próximo com o hardware para executar com eficiência o suporte de baixo nível.

Relacionado:  NTICX: definição e conteúdo

Eficiência

O C ++ possui uma biblioteca de modelos padrão que pode ser usada extensivamente durante a codificação. Essas bibliotecas fornecem algoritmos eficientes que permitem ao programador economizar tempo e esforço, que seriam desperdiçados na criação de código.

Liberdade de escolha de estilos de programação

O C ++ suporta cerca de sete estilos diferentes de codificação, tornando-o uma linguagem de programação multi-modelo. Assim, você pode selecionar um estilo que se adapte a um caso de uso específico, sem precisar usar objetos.

Capacidade de decompor problemas complexos

O C ++ pode intuitivamente resolver problemas complexos criando objetos. Além disso, as funções C ++ permitem que você divida seu código em blocos lógicos claros, fáceis de entender e fáceis de testar e modificar.

Capacidade de detectar erros antes da execução

C ++ tem um tipo estático, o que significa que o compilador não faz suposições sobre o que o programador escreve. O benefício é que o compilador pode detectar erros e falhas antes da execução, o que pode economizar tempo a longo prazo.

Desvantagens

Uso de ponteiros

Ponteiros são um conceito relativamente difícil de entender e também consomem muita memória. O mau uso de ponteiros pode causar falhas no sistema ou comportamento anormal.

Um grande problema é quando os dados apontam o mesmo de dois pontos de partida diferentes, causando um problema significativo, causando problemas confusos na codificação.

Problemas de segurança

Embora a programação orientada a objetos ofereça muita segurança aos dados sendo manipulados, ainda existem alguns problemas de segurança devido à disponibilidade de funções de amigos, variáveis ​​globais e ponteiros.

Falta de coletor de lixo

O C ++ oferece ao usuário controle completo do gerenciamento da memória do computador. Não possui a função de um coletor de lixo para filtrar automaticamente dados desnecessários e, portanto, não suporta alocação dinâmica de memória.

Ausência de fio

O C ++ não suporta segmentação integrada. O conceito de encadeamento é relativamente novo para C ++, pois originalmente não existia. C ++ agora é capaz de suportar funções lambda.

Programas compilados

Como uma linguagem compilada, os arquivos executáveis ​​produzidos pelo compilador a partir do código-fonte não são portáteis e serão executados apenas na plataforma de destino (hardware mais sistema operacional) para a qual foram compilados ou em uma plataforma binária suportada.

Pode ser complexo

O C ++ pode ser complexo, pois permite classes, que são funções com o mesmo nome. Portanto, um sistema de gerenciamento de símbolos deve ser usado. Além disso, é complexo para um programa de alto nível muito grande. C ++ é comumente usado para aplicativos específicos da plataforma.

Referências

  1. Simplilearn (2020). Programação C ++ para iniciantes: histórico, benefícios e aplicativos. Retirado de: simplilearn.com.
  2. Educba (2020). Usos de C ++ no mundo real. Retirado de: educba.com.
  3. Dmitrii Rassokhin (2020). A linguagem de programação C ++ em quiminformática e química computacional. Jornal de Cheminformatics. Retirado de: jcheminf.biomedcentral.com.
  4. Edureka! (2020). Quais são os 10 principais recursos do C ++? Retirado de: edureka.co.
  5. Eles adoram Goel (2020). Linguagem C ++: Recursos, usos, aplicativos e vantagens. Hackr. Retirado de: hackr.io.
  6. Steemit (2020). C ++: Aprenda a codificar. História, vantagens, desvantagens da linguagem C ++. Retirado de: steemit.com.
  7. Data Flair (2019). Aprenda tipos de dados em C e C ++ com o exemplo em apenas 4 minutos. Retirado de: data-flair.training.

Deixe um comentário

Este site usa cookies para lhe proporcionar a melhor experiência de usuário. política de cookies, clique no link para obter mais informações.

ACEPTAR
Aviso de cookies