curso de programação em c++

3
Curso de Programação em C++ Universidade Federal do Ceará Departamento de Engenharia Estrutural e Construção Civil Prof: Evandro Parente Junior Monitor: Renato Peixoto Abril/2007

Upload: nate

Post on 06-Jan-2016

28 views

Category:

Documents


0 download

DESCRIPTION

Curso de Programação em C++. Universidade Federal do Ceará Departamento de Engenharia Estrutural e Construção Civil Prof: Evandro Parente Junior Monitor: Renato Peixoto Abril/2007. Alocação dinâmica. Operadores: new: reserva o espaço de memória necessário delete: libera a memória alocada. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Curso de Programação em C++

Curso de Programação em C++

Universidade Federal do CearáDepartamento de Engenharia Estrutural

e Construção Civil

Prof: Evandro Parente JuniorMonitor: Renato Peixoto

Abril/2007

Page 2: Curso de Programação em C++

2

Alocação dinâmica Operadores:

new: reserva o espaço de memória necessário delete: libera a memória alocada.

Exemplo:

Toda memória alocada deve ser liberada: Cuidado com alocação dentro de laços e de funções. Evitar memory leaks (memória perdida). Ao final da execução a memória alocada pelo programa

é liberada pelo sistema.

int n;cin >> n;double *x = new double[n]; // Aloca um vetor com n posiçõesfor (int i = 0; i < n; i++) x[i] = 0.0; // Inicializa o vetor alocadodelete []x; // Libera a memoria alocada

Page 3: Curso de Programação em C++

3

Alocação dinâmica Matrizes:

São tratadas como um vetor de ponteiros para vetores.

As linhas correspondem a um vetor de ponteiros que apontam para o primeiro elemento de cada coluna.

Cada coluna é um vetor independente. Exemplo:

int n,m;cin >> n >> m;double **A = new double*[n]; // Aloca as n linhas da matriz Afor (int i = 0; i < n; i++) A[i] = new double[m]; // Aloca as m colunas de cada linha…for (int i = 0; i < n; i++) delete []A[i]; // Libera as m colunas de cada linhadelete []A; // Libera as n linhas da matriz A