Вы находитесь на странице: 1из 3

Apostila: Aulas prticas de Algoritmos e estrutura de dados II - UFSJ/2012

Aula prtica 1 1. Reviso


1.1. Criando uma classe em C++ Ser criada, como exemplo, uma classe denominada Ponto no Bloodshed Dev-C++ para manipular coordenadas em um espao 2D. Os atributos da classe so as coordenadas X e Y, os mtodos permitem inserir os valores do ponto e recuper-los. A definio da classe estar no arquivo de header (ponto.h) e a implementao no arquivo fonte (ponto.cpp). Sero adotados os seguintes procedimentos (convenes): 1. O nome de uma classe sempre comear com uma letra maiscula e as restantes minsculas. Exemplo: Ponto. 2. A definio da classe dever estar em um arquivo de "header" (extenso h), cujo nome ser o nome da classe em letras minsculas. Exemplo: ponto.h ser o arquivo "header" da classe Ponto. 3. A implementao da classe dever estar em um arquivo fonte (extenso cpp), cujo nome ser o nome da classe em minsculas. Exemplo: ponto.cpp ser o arquivo de implementao da classe Ponto. 4. Os mtodos construtores devero ter o mesmo nome da classe. Os mtodos destruidores, que finalizam os objetos da classe devem ter o mesmo nome da classe precedido do smbolo "~". Mtodos construtores e destruidores sero sempre mtodos pblicos. 5. Os programas, que usaro as classes, devero incluir os arquivos de "header" dessas classes atravs de diretivas de incluso. Exemplo: #include "ponto.h". A definio da classe, no arquivo de "header" deve ter a forma mostrada na Figura 1. Note especificamente as diretivas para o pr-processador #ifndef pontoH; #define pontoH e #endif que evitam a incluso recursiva do arquivo de cabealho.

Figura 1: estrutura bsica de uma classe num arquivo header.

Autores: Heber Tormentino de Sousa. 3

Apostila: Aulas prticas de Algoritmos e estrutura de dados II - UFSJ/2012 Na Figura 2 mostrado o cdigo de definio da classe Ponto. O arquivo dever ser salvo com o nome de ponto.h .

Figura 2: definio da classe Ponto. (Contedo do arquivo ponto.h).

Na Figura 3 mostrado o cdigo de implementao da classe Ponto. O arquivo dever ser salvo com o nome de ponto.cpp

Figura 3: implementao da classe Ponto. (Contedo do arquivo ponto.cpp).

Autores: Heber Tormentino de Sousa. 4

Apostila: Aulas prticas de Algoritmos e estrutura de dados II - UFSJ/2012

Figura 4: cdigo fonte utilizando a classe Ponto. Contedo do arquivo main.cpp.

Figura 5: sada do programa correspondente ao cdigo da Figura 4.

1.1.2. Exerccios
Construa uma classe Fila em que se armazenam uma sequncia de nmeros digitada pelo usurio de forma que o prximo nmero digitado ser armazenado por ltimo. A classe dever conter os seguintes parmetros e mtodos: Atributos: tamMax: tamanho mximo da sequncia. proximaVaga: ndice da prxima posio disponvel. Fila: array dinmico. Mtodos: Inserir(x): insere o valor x na primeira posio disponvel. Retirar(y): retira o valor contido na posio y. Ler(y): retorna o valor contido na posio y. ObterProx(): retorna o ndice da prxima posio vaga. Limpar(): limpa a fila. ObterTam(): retorna o tamanho mximo da fila.

Autores: Heber Tormentino de Sousa. 5

Вам также может понравиться