- Objetos - Têm estado e ação. Exemplo: uma pessoa com estado (nome, idade) e ação (falar, andar). Objetos são instâncias de classses.
- Classes - São modelos que descrevem o estado e ação dos objetos.
- Métodos - Definem ações. Uma classe pode conter vários métodos para lógica e operações.
- Variáveis de instância - São únicas para cada objeto, definindo seu estado.
Estrutura de um Programa em C++
Considere um código simples que exibe "Olá Mundo".
#include <iostream>
using namespace std;
int main() {
cout << "Olá Mundo" << endl;
return 0;
}
Detalhes do código:
- O cabeçalho <iostream> fornece funções de E/S.
- using namespace std; utiliza o namespace padrão.
- Comentários de linha única começam com //.
- main() é a função inicial.
- cout imprime texto no console.
- return 0; indica término bem-sucedido.
Compilação e Execução
Passos para compilar e eexcutar código C++:
- Salve o arquivo como programa.cpp.
- No terminal, entre no diretório do arquivo.
- Compile com g++ programa.cpp. Erros ausentes geram a.out.
- Execute com ./a.out.
$ g++ programa.cpp
$ ./a.out
Olá Mundo
Ponto e Vírgula e Blocos
Ponto e vírgula (;) finaliza instruções. Blocos são agrupados com chaves {}.
Exemplo de instruções:
a = b;
b = b + 1;
processar(a, b);
Bloco de código:
{
cout << "Exemplo";
return 0;
}
Identificadores
Identificadores são nomes para variáveis, funções, classes, etc. Começam com letra ou underline, seguidos de letras, dígitos ou underlines. São sensíveis a maiúsculas.
Exemplos válidos:
contador _dado valor_total x2
Palavras-chave
Palavras reservadas em C++ não podem ser usadas como identificadores. Exemplos:
| asm | else | new | this |
|---|---|---|---|
| auto | enum | operator | throw |
| bool | explicit | private | true |
| break | export | protected | try |
| case | extern | public | typedef |
| catch | false | register | typeid |
| char | float | reinterpret_cast | typename |
| class | for | return | union |
| const | friend | short | unsigned |
| const_cast | goto | signed | using |
| continue | if | sizeof | virtual |
| default | inline | static | void |
| delete | int | static_cast | volatile |
| do | long | struct | wchar_t |
| double | mutable | switch | while |
| dynamic_cast | namespace | template |
Trigraphs
Trigraphs são sequências de três caracteres iniciando com ??, substituindo outros caracteres. São pouco comuns.
| Trigraph | Substituto |
|---|---|
| ??= | # |
| ??/ | \ |
| ??' | ^ |
| ??( | [ |
| ??) | ] |
| ??! | | |
| ??< | { |
| ??> | } |
| ??- | ~ |
Para evitar substituição, use sequências de escape ou concatenação de strings.
Espaços em Branco
Espaços em branco são ignorados pelo compilador, mas melhoram a legibilidade. Separam elementos como identificadores e operadores.