Introdução ao C++ para programadores OO Instrutores: Francisco Carvalho, João Paulo do Monte, Renato Viana Ferreira {fcfl, jpsml,

Slides:



Advertisements
Apresentações semelhantes
Programação Orientada a Objetos*
Advertisements

C/C++ para Sistemas Operacionais Professor: André Luis Meneses Silva /msn: Página:
Paulo Marques Hernâni Pedroso
Programação II Estruturas de Dados
Programação II Estruturas de Dados
Algoritmos e Estrutura de Dados I
Políticas Curso de aprofundamento em linguagem C.
Linguagem C LPG-I – Variáveis Estruturadas – Vetores
LPG - I: Alocação Dinâmica de Memória - Ponteiros
LPG - I: Ponteiros e Vetores/Matrizes UDESC - SBS
Curso de C/C++ Avançado
Centro Integrado de Tecnologia da Informação
Linguagem C Strings.
Ponteiros em Linguagem C
Tratamento de Ficheiros
Revisão da Linguagem C.
Classes e objetos P. O. O. Prof. Grace.
Tópicos Tipos de Dados Variáveis por Valor Variáveis por Referência
JAVA: Conceitos Iniciais
Aula prática 8 Ponteiros Monitoria de Introdução à Programação
Aula prática 13 Orientação a Objetos – C++ Parte 1
Aula prática 6 Vetores e Matrizes
Curso de Nivelamento LCG
PROGRAMAÇÃO ESTRUTURADA II
GEJAVA IV SCJA – Certificação Sun java associado exame cx
Estrutura de dados II Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Programação I Aula 2 (Métodos)
OPERADORESOPERADORES SCJP – Otimize-TI. Operadores Java Resultado: Maioria das operações é um booleano ou numérico. Não podem ser sobrecarregados (Existem.
Linguagem de programação I A Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Linguagem de Programação JAVA
Introdução a aplicativos Java
Paradigmas e Ferramentas de Desenvolvimento de Software – Revisão da linguagem C++ Lúbia Vinhas DPI - INPE.
Curso de C/C++ Aula 2 Instrutor: Luiz Felipe Sotero
Programação em C++ Compiladores
Introdução à Programação Orientada a Objetos com Java Paulo Borba Centro de Informática Universidade Federal de Pernambuco Programação Imperativa (e Ponteiros.
Aula 3 Igor Ebrahim (ies) if669 - Introdução à Programação Monitoria de IP.
Estruturas de Dados Aula 2: Estruturas Estáticas 07/04/2014.
By Ducheno Kelly Centro de Formação São Domingos.
Educação Profissional Técnica de Nível Médio Curso Técnico de Informática
3. Introdução à Linguagem C
Aula prática 14 Orientação a Objetos – C++ Parte 2
Linguagem de Programação C#
Programação Orientada a Objetos - Java
Algoritmos e Estrutura de Dados I Jean Carlo Mendes
Joaquim José Hangalo  Podemos entender a memória do computador como um conjunto de células que armazenam informações.  Cada célula.
STRINGS Dilvan Moreira (baseado no livro Big Java e Z. Liang)
Estruturas de Dados Aulas 3 e 4: Uso da memória e Vetores
Certificação Marco Antonio. Introdução A compreensão desse capítulo é muito importante pois trata de um assunto essencial em qualquer linguagem de programação,
Aula Prática 1 Monitoria IP/CC (~if669) (A partir do slide elaborado por Luís Gabriel)
Copyright 1998, Departamento de Informática da UFPE. Todos os direitos reservados sob a legislação em vigor. Variáveis e métodos estáticos, Passagem de.
Copyright 2000, Departamento de Informática, UFPE. Todos os direitos reservados sob a legislação em vigor. Orientação a Objetos e Java.
 2000 Prentice Hall, Inc. All rights reserved. 1 Capítulo 8 - Caracteres e Strings Sumário 8.1Introdução 8.2Conceitos Fundamentais de Strings e Caracteres.
Algoritmos e Programação MC102 Prof. Paulo Miranda IC-UNICAMP Aula 15 Ponteiros.
Programação Computacional Aula 8: Entrada e Saída pelo Console Prof a. Madeleine Medrano
BCC221 Programação Orientada a Objetos Prof. Marco Antonio M. Carvalho 2014/2.
Ponteiros em C Prof. Kariston Pereira
Linguaguem de Programação II
Laboratório de Programação II Método main Dados e Métodos de Classes.
Algoritmo e Estrutura de Dados I Aulas 15 – Linguagem C Alocação Dinâmica de Memória Márcia Marra
Linguagem de Programação
Arrays Outline 7.1 Introdução 7.2 Arrays 7.3 Declarando e Criando Arrays 7.4 Exemplos usando arrays 7.5 Ordenando arrays 7.6 Procurando em.
Linguagem Java Programação II.
Módulo I Capítulo 7: Funções e Procedimentos William Ivanski Curso de Programação C#
Aula Prática 6 Ponteiros Monitoria  Quando declaramos uma matriz:  tipo meuArray[tam];  O compilador aloca a matriz em uma região de memória.
Alocação Dinâmica de Memória e Tipo Abstrato de Dados Cristiano Arbex Valle Vinicius Fernandes dos Santos
Laboratório de Computação Aula 06 e 07 – Implementação de classes Prof. Fábio Dias
Introdução à Orientação a Objetos em Java Prof. Gustavo Wagner (Alterações) Slides originais: Prof. Tiago Massoni Desenvolvimento de Sistemas FATEC-PB.
PROGRAMAÇÃO ORIENTADA A OBJETOS EM C++ PAE: Pedro Shiguihara Professor: Dilvan Moreira.
Linguagem de Programação – Aula 04 Prof. Me. Ronnison Reges Vidal.
FUNÇÕES Dilvan Moreira (baseado em material de Z. Liang)
Transcrição da apresentação:

Introdução ao C++ para programadores OO Instrutores: Francisco Carvalho, João Paulo do Monte, Renato Viana Ferreira {fcfl, jpsml,

Semelhanças com Java Paradigma Sintaxe Estruturação –Código –Programa

Tipos Primitivos TipoTamanho bool{true, false} byte8-bit short16-bit int32-bit long64-bit char16-bit (unsigned) float32-bit double64-bit Ponto flutuante Inteiros Booleano

Sintaxe Declaração / Inicialização de variáveis Estruturas de controle Modificadores de acesso Classes Strings e arrays Arquivos de cabeçalho

Exemplo 1 #include int main(){ std::cout << “Hello World!\n”; return 0; //codigo de termino do programa }

Estruturando sua classe Declarações agrupadas por modificador de acesso Assinaturas no corpo da classe Definições após o corpo da classe Ponto-e-vírgula ao final da classe >=( –Exemplo1v.cpp

Declarando/Inicializando objetos Variável do programa –Conta c(/*parametros*/); Ponteiro na heap do SO –Conta *c = new Conta(/*parametros*/);

Exemplo 2 Exemplo2.cpp

Destrutores Desalocam a memória e devolvem para o SO Semelhantes ao free de C Triviais para objetos sem alocação dinâmica São chamados quando o main termina ou quando exit(int) é chamado

Exemplo 3 Exemplo3.cpp

Const Modificador semelhante ao final de java Objetos/variáveis const: –Não modificável. Qualquer tentativa incorre em erro de compilação. Funções const: –Não modificam o objeto Const pode ser usado ao passar um parâmetro para uma função.

Exemplo 4 Exemplo4.cpp

I/O Entrada e saída com streams padrão –std::cout –std::cin Declarando uso –#include –using

Exemplo 5 Exemplo5.cpp

I/O com arquivos Objetos da biblioteca padrão ios e subjacências Operadores >> e << sobre- carregados

I/O com arquivos Funções mais comuns: –open, close, !, >, write, read, seekp, put, eof... Permissões do arquivo (ios) –in, out, trunc, app, binary

Exemplo 6 Exemplo6.cpp

Exercício Produza um arquivo de texto com dados sobre qualquer tema que você queira (placares de varios jogos de duas equipes, historico de temperatura corporal de um paciente, qualquer coisa) e escreva um programa em C++ que leia estes dados, processe-os (ou não) e imprima dados resultantes na tela.

Introdução ao C++ para programadores OO Instrutores: Francisco Carvalho, João Paulo do Monte, Renato Viana Ferreira {fcfl, jpsml,

Arrays int c[12]; int n [] = { 1, 2, 3, 4, 5 }; int *array = new int[5]; Não existe c.length, ou seja, guarde o tamanho do array!!! 

Exemplo 7 Exemplo7.cpp

Exemplo 8 Exemplo8.cpp

Arrays Multidimensionais int b[2][2]; int b[2][2] = { { 1, 2 }, { 3, 4 } }; Não é possível fazer “new” com mais de uma dimensão...  double **notas = new double*[qtdAlunos]; for(i=0;i<qtdAlunos;i++){ e.notas[i] = new double[e.qtdNotas]; }

Exemplo 9 Exemplo9.cpp

Strings Strings em C++ podem tanto ser consideradas como um array de caracteres como um objeto. #include Métodos Principais: append, at, compare, find, insert...

Exemplo 10 Exemplo10.cpp

Ponteiros Armazenam endereços de memória Possuem tipos –Ponteiro pra int –Ponteiro pra bool int *a; Ponteiros são “PERIGOSOS”  –Segmentation Fault... –Travamentos... –Tela AZUL!!!

Ponteiros Operador & retorna o endereço de uma variável. Operador * retorna o valor apontado por uma variável. a++; a--;

Exemplo 11 Exemplo11.cpp

Herança Operador “:” Polimorfismo usando a palavra chave “virtual”. Se não usar “virtual” é executado o método do tipo de objeto que chamou...

Exemplo 12 Exemplo12.cpp Conta.cpp Conta.h

Herança Função virtual pura: torna a classe abstrata: –virtual void mover() const = 0; –Usada para simular interfaces em C++

Exemplo 13 Exemplo13.cpp Animal.h

Templates (Generics???) Template de função –Usadas normalmente para executar operações semelhantes sobre tipos de dados diferentes. Template de classes

Exemplo 14 Exemplo14.cpp

Ver... Classes e Funções Friend Herança Múltipla Sobrecarga de Operadores Exceções

Introdução ao C++ para programadores OO Instrutores: Francisco Carvalho, João Paulo do Monte, Renato Viana Ferreira {fcfl, jpsml,