Você não tem permissão para ver discussões neste fórum
Agenda do Curso
-
- Apresentação
- Conjuntos e lógica
- Representação binária
- Operações binárias
- Modelo básico de computador
- Memória e endereços
- Complemento de dois
- Ponto flutuante
- Representações octal e hexadecimal
- Representação de caracteres
- Compilação
-
- Estrutura básica de um código C++
- Variáveis e tipos de dados básicos
- Constantes literais
- Inicialização
- Alguns tipos compostos (string e vector)
- Operações de entrada e saída
- Execução condicional (if)
- Execução repetitiva (while)
-
- Execução repetitiva
- Com do/while
- Com for (estilo antigo)
- Com for (estilo novo)
- Declaração de variáveis com auto
- Alguns exemplos
-
- Prática 1 (início)
- switch
- Operações de entrada e saída
-
Semana Santa. Não há aula.
-
Funções
- Argurmentos e valores de retorno
- Argumentos de entrada e saída
- Referências e referências constantes
- Retornos múltiplos
- Argumentos com valores assumidos
- Sobrecarga de nome de função
-
- Aula prática.
- Escopo de identificadores.
- Compilação separada e arquivos de cabeçalho.
- Uso básico do comando make.
- Aula prática.
-
Tipos definidos pelo usuário (primeira parte)
- Dando novos nomes para tipos existentes (using).
- Tipos enumerados (enum class)
- Tipos estruturados (struct)
-
Ponteiros
- Endereços de variáveis na memória.
- Variáveis do tipo ponteiro.
- Operadores de tomada de endereço (&) e de indireção (*).
- Ponteiro nulo (nullptr).
- Ponteiros como parâmetros de funções.
- Ponteiros como valores de retorno.
- Ponteiros e constantes.
- Alocação de memória dinamicamente com new/delete.
-
Continuação do exemplo de árvores binárias de busca: operação de retirada de elementos.
-
09/05: Primeira prova
Apresentação da necessidade de considerar posse do objeto apontado quando trabalhamos com ponteiros.
O ponteiro inteligente std::unique_ptr.
-
- Apresentação de exemplo de uso de std::unique_ptr no código de árvore binária de busca.
- Introdução a std::shared_ptr e std::weak_ptr.
- Início da apresentação de orientação a objetos:
- Ligando novos tipos de dados com as operações neles.
- Encapsulação (esconder detalhes da implementação) e seus benefícios (garantir que o usuário não vai alterar indevidamente os dados e isolá-lo de possíveis mudanças na implementação).
- Apresentação de exemplo de uso de std::unique_ptr no código de árvore binária de busca.
-
- Prática 4
- Mais detalhes sobre classes:
- Invariantes de classes
- Pré e pós-condições de métodos
- Consttrutor usado para estabelecimento de invariante
- Métodos inline
- Sintaxe de inicialização de membros
- Objetos constantes
- Delegação de construtores
-
30/05: Aula cancelada devido à greve dos caminhoneiros.
31/05: Corpus Christi: Não há aula
-
- Sobrecarga de operadores (definindo operadores para os seus tipos).
- Definindo conversões (implícitas e explícitas) para os seus tipos.
- Definindo uma forma de escrever seus tipos em arquivos/cout.
- Construtores de cópia.
- Destruidores.
- Diferenças entre pré-incremento e pós-incremento.
- Herança e polimorfismo.
-
- Tratamento de erros com o uso de exceções.
- Templates (programação genérica).
-
27/06: Segunda Prova
-
04/07: Prova substitutiva
-
Substitui a menor nota entre as provas 1 e 2 (se for maior).
-