document.write('
Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. /* Primeiro exemplo de como utilizar construtores para classes */
  2.  
  3. #include <iostream>
  4. using namespace std;
  5.  
  6. /* Classe que representa retangulos */
  7. class retangulo
  8. {
  9.     /* Variaveis privadas para representar largura,
  10.     comprimento, area e perimetro do retangulo */
  11.         float larg, comp, area, perim;
  12.     public:
  13.         /* Contrutor da classe \'retangulo\', chamado somente na
  14.         declaracao de um objeto do tipo \'retangulo\'. Qualquer chamada
  15.         dessa funcao no resto do codigo ira gerar um erro de compilacao
  16.         (nao sera gerado um arquivo executavel) */
  17.         retangulo(float L, float C);
  18.         /* Funcao para escrever os valores de \'larg\', \'comp\',
  19.         \'area\' e \'perim\' na tela */
  20.         void escreve_tela();
  21. };
  22.  
  23. /* Definicao do construtor da classe \'retangulo\'
  24. Construtores devem ter o mesmo nome da classe,
  25. e nao retornam nenhum valor */
  26. retangulo::retangulo(float L, float C)
  27. {
  28.     /* \'larg\' recebe o valor de \'L\', que eh a primeira variavel de entrada */
  29.     larg = L;
  30.     /* \'comp\' recebe o valor de \'C\', que eh a segunda variavel de entrada */
  31.     comp = C;
  32.     /* Formula da area do retangulo */
  33.     area = larg * comp;
  34.     /* Formula do perimetro do retangulo */
  35.     perim = 2 * (larg + comp);
  36. }
  37.  
  38. /* Definicao da funcao que escreve os valores de
  39. \'larg\', \'comp\', \'area\' e \'perim\' na tela */
  40. void retangulo::escreve_tela()
  41. {
  42.     cout << "---------------------------------" << endl;
  43.     cout << "Largura = " << larg << endl;
  44.     cout << "Comprimento = " << comp << endl;
  45.     cout << "Area = " << area << endl;
  46.     cout << "Perimetro = " << perim << endl;
  47.     cout << "---------------------------------" << endl;
  48. }
  49.  
  50. int main()
  51. {
  52.     /* Criacao de um objeto da classe \'retangulo\'
  53.     Os valores entre parenteses serao assinalados
  54.     para as variaveis \'L\' e \'C\' no construtor da classe */
  55.     retangulo r(2.0, 3.4);
  56.     /*Chamada da funcao que escreve os valores de
  57.     \'larg\', \'comp\', \'area\' e \'perim\' na tela */
  58.     r.escreve_tela();
  59.     /* A chamada abaixo esta errada. Nao podemos chamar
  60.     o construtor da classe em nenhuma outra parte do
  61.     codigo que nao seja na declaracao de variaveis e objetos.
  62.     Caso voce "des-comente" a linha abaixo, o codigo nao ira compilar*/
  63.     //r.retangulo(10.0, 3.4);
  64.    
  65.     /* Fim do codigo */
  66.     return 0;
  67. }
');