Você está na página 1de 2

Trabalho de POO Questo 1-parte 1 A)

// Xpto.h class Xpto { public: int v[3]; Xpto(): v[0](0), v[1](0), v[2](0) {}; Xpto (int a1, int b1, int c1) : V[0](a1), v[1](b1), v[2](c1){}; int produto(){ return (v[0]*v[1]*v[2]);}; int soma(){ return (v[0]+v[1]+v[2]); }; };

B) Para que os programas ou classes clientes de Xpto, como o caso do programa exemplo1, continue funcionando normalmente aps as modificaes necessrio que em todos os locais onde h o acesso direta as atributos a, b e/ou c da classe seja substitudos por v[0], v[1] e v[2] respectivamente. Ex: A expresso X1.a=2; deve ser substituda por X1.v[0]=2;

Questo 1- parte 2 c)
// Ypto.h class Ypto { private: int v[3]; public: Ypto (int a1=0, int b1=0, int c1=0) : v[0](a1), v[1](b1), v[2](c1){}; int produto()const{ return (v[0]*v[1]*v[2]);}; int soma()const { return (v[0]+v[1]+v[2]); }; int getA()const{return v[0];}; int getB()const{return v[1];}; int getC()const{return v[2];}; void setA(int a1){v[0]=a1;}; void setB(int b1){v[1]=b1;}; void setC(int c1){v[2]=c1;}; };

D) Os programas clientes da classe Ypto como o caso do programa exemplo2 no tero de fazer qualquer alterao no seu cdigo fonte, uma vez que elas no tem acesso direto aos atributos que sofrero alterao.

E) A restrio aos atributos e a analise correta na criao da classe a fim de definir adequadamente os mtodos que cada uma, permitindo a criao de uma interface coesa e simplificada, caso da classe ypto, trs grande praticidade no s para a utilizao correta da classe como tambm a agilidade e segurana em eventuais manutenes ou lanamento de novas verses. Assim como garantir a segurana ou seja impedindo que os atributos sejam modificados inadequadamente, podendo tambm ter mtodos (privados) que garantam a validade de um dado antes de modificar qualquer atributo.

Você também pode gostar