C++ é uma linguagem de programação de alto nível com facilidades para o uso em baixo nível. Foi desenvolvida por Bjarne Stroustrup (foto) como uma melhoria da linguagem C, e desde os anos 1990 é uma das linguagens mais populares do mundo.
O leitor poderá se sentir à vontade para expor suas opiniões, sugestões e dúvidas. Os que tiverem interesse também poderão contribuir para o desenvolvimento deste livro e ajudar a difundir os conhecimentos da fascinante linguagem C++.
Quem sabe programar em , é capaz de programar , devido à semelhança entre as linguagens e o fato do C++ ser uma extensão do C. Contudo o C não é completamente um subconjunto do C++. Grande parte de C pode ser perfeitamente em C++, mas existem algumas pequenas diferenças e entre as linguagens que tornam alguns trechos de código C válidos em código C++ inválido, ou códigos que exibem comportamentos diferentes em cada linguagem.
Algumas diferenças básicas:
Chamamos o modo de programar em "C" de orientado a procedimentos e chamamos o modo do "C++" de orientado a objetos. Muitas pessoas confundem as coisas quando começam a programar usando um compilador C++, pois esta linguagem permite programar nos dois modos. Essa é uma das características que a torna mais flexível.
Apesar de C++ permitir programar em modo orientado a procedimentos, podemos dizer que nestes casos estamos programando em "C", usando um compilador C++. Quando usamos C++ programamos em modo orientado a objetos. Devido a estas características, o C++ permite programar em modo misto, ou seja, escrevendo partes do código orientadas a procedimentos e outras orientadas a objetos.
As difernças entre os dois modos de programar serão esclarecidas nos capítulos subsequentes. Por hora nos basta deixar claro que os dois modos são diferentes. Usar estes dois modos de programar ao mesmo tempo é uma das facilidades que o C++ permite, enquanto que outras linguagens orientadas a objetos como Java, Eifel, etc, não permitem.
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:
[ul]
O leitor poderá se sentir à vontade para expor suas opiniões, sugestões e dúvidas. Os que tiverem interesse também poderão contribuir para o desenvolvimento deste livro e ajudar a difundir os conhecimentos da fascinante linguagem C++.
Quem sabe programar em , é capaz de programar , devido à semelhança entre as linguagens e o fato do C++ ser uma extensão do C. Contudo o C não é completamente um subconjunto do C++. Grande parte de C pode ser perfeitamente em C++, mas existem algumas pequenas diferenças e entre as linguagens que tornam alguns trechos de código C válidos em código C++ inválido, ou códigos que exibem comportamentos diferentes em cada linguagem.
Algumas diferenças básicas:
- O C permite a conversão implícita entre o void* para para outros tipos, algo que o C++ não permite.
- O C permite que constantes de caracteres sejam inseridas em chamadas de funções com parâmetros tipo char*, em C++ é preciso declarar o parâmetro como const char *;
Chamamos o modo de programar em "C" de orientado a procedimentos e chamamos o modo do "C++" de orientado a objetos. Muitas pessoas confundem as coisas quando começam a programar usando um compilador C++, pois esta linguagem permite programar nos dois modos. Essa é uma das características que a torna mais flexível.
Apesar de C++ permitir programar em modo orientado a procedimentos, podemos dizer que nestes casos estamos programando em "C", usando um compilador C++. Quando usamos C++ programamos em modo orientado a objetos. Devido a estas características, o C++ permite programar em modo misto, ou seja, escrevendo partes do código orientadas a procedimentos e outras orientadas a objetos.
As difernças entre os dois modos de programar serão esclarecidas nos capítulos subsequentes. Por hora nos basta deixar claro que os dois modos são diferentes. Usar estes dois modos de programar ao mesmo tempo é uma das facilidades que o C++ permite, enquanto que outras linguagens orientadas a objetos como Java, Eifel, etc, não permitem.
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 , e contém vários melhoramentos;
- Deu origem a grandes linguagens como e ;
- É a porta para a ;
- C++ pode virtualmente ser efetivamente aplicado a qualquer tarefa de ;
- Há vários compiladores para diversas plataformas tornando a linguagem uma opção para programas multiplataforma.
[ul]
- ;
- ;
- ;
- ;
- Programas de .
- Função, do latim functio, onis, representa na computação, um pequeno algoritmo com uma função simples e bem definida. É como se cada função fosse um micro programa, ou um tijolo na construção do programa principal. O uso de funções facilita muito o desenvolvimento, pois, divide o problema principal em pequenos problemas mais simples. Essa técnica se chama, Dividir para conquistar.
A experiência mostra que o uso de funções facilita e acelera a criação e manutenção de sistemas.
Todo programa em C++ tem pelo menos uma função, o main. Veja o exemplo do em C++:
#include <iostream> //Biblioteca com funções de entrada e saída de dados
using namespace std;
int main (void) //Função principal do programa
{
cout << "Olá mundo!"; //cout também é uma função, e precisa ser importada da biblioteca iostream
//Esta função main retorna um valor int, ou inteiro, por isso faz a operação de retornar 0
return 0;
}
Do exemplo Olá mundo, vemos que toda função em C++ tem um nome. O nome de uma função junto com o tipo de dados que retorna é chamado assinatura da função.
int main (void) //Assinatura da função main
Essa assinatura informa que a função de nome main retorna na sua execução um valor do tipo int, ou inteiro, e recebe void como parâmetro. Receber void significa que a função não recebe parâmetro, se a função retorna void, significa que não retorna nada. Algumas funções não precisam retornar nenhum valor para funcionar, apenas realizar alguma ação.
Editado por um moderador: