Difference between revisions of "Programação com Objectos/Aula Prática 08/Exercício de C++"

From Wiki**3

< Programação com Objectos‎ | Aula Prática 08
(Created page with "'''Exercício de C++ da semana 08 -- entregar exclusivamente em papel na aula prática da semana 09.''' == Entradas e Saídas em C++, operadores de escrita e leitura == Cons...")
 
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
'''Exercício de C++ da semana 08 -- entregar exclusivamente em papel na aula prática da semana 09.'''
+
'''Exercício de C++ da semana 08 -- entregar exclusivamente, em papel A4 manuscrito, na aula prática da semana 09.'''
  
 
== Entradas e Saídas em C++, operadores de escrita e leitura ==
 
== Entradas e Saídas em C++, operadores de escrita e leitura ==
Line 7: Line 7:
 
Escreva os operadores '''operator<<''' (escrita de um gato para um '''std::ostream''') e '''operator>>''' (leitura de um gato de um '''std::istream'''). Este operador é simétrico do de escrita e já está definido para tipos primitivos e pré-definidos (e.g., '''std::string'''). A definição para novos tipos faz-se por aplicação sucessiva aos vários campos.
 
Escreva os operadores '''operator<<''' (escrita de um gato para um '''std::ostream''') e '''operator>>''' (leitura de um gato de um '''std::istream'''). Este operador é simétrico do de escrita e já está definido para tipos primitivos e pré-definidos (e.g., '''std::string'''). A definição para novos tipos faz-se por aplicação sucessiva aos vários campos.
  
Escreva a função main que execute as seguintes operações: (1) cria dois gatos (“Tareco” com 2 anos e “Pantufa” com 6 meses); (2) escreve os gatos para um '''std::stringstream'''; (3) cria dois gatos não inicializados; (4) recupera os dois primeiros gatos do stream para os objectos recém criados (que não estavam inicializados) e; (6) apresenta-os  na saída ('''std::cout''').
+
Escreva a função '''main''' que execute as seguintes operações: (1) cria dois gatos (“Tareco” com 2 anos e “Pantufa” com 6 meses); (2) escreve os gatos para um '''std::stringstream'''; (3) cria dois gatos não inicializados; (4) recupera os dois primeiros gatos do stream para os objectos recém criados (que não estavam inicializados) e; (6) apresenta-os  na saída ('''std::cout''').
  
 
[[category:Ensino]]
 
[[category:Ensino]]
 
[[category:PO]]
 
[[category:PO]]
 
[[category:Aulas Práticas de PO]]
 
[[category:Aulas Práticas de PO]]

Latest revision as of 09:16, 2 October 2019

Exercício de C++ da semana 08 -- entregar exclusivamente, em papel A4 manuscrito, na aula prática da semana 09.

Entradas e Saídas em C++, operadores de escrita e leitura

Considere uma classe Cat (não é necessário implementá-la). Considere que a classe Cat tem atributos idade (_age) e nome (_name). Considere que os construtores de Cat são tais que um (o de omissão) inicia um gato com idade 0 (zero) e nome “anónimo”; e outro que aceita os valores para os atributos mencionados como argumentos. Considere que os métodos de acesso (getters e setters) estão definidos.

Escreva os operadores operator<< (escrita de um gato para um std::ostream) e operator>> (leitura de um gato de um std::istream). Este operador é simétrico do de escrita e já está definido para tipos primitivos e pré-definidos (e.g., std::string). A definição para novos tipos faz-se por aplicação sucessiva aos vários campos.

Escreva a função main que execute as seguintes operações: (1) cria dois gatos (“Tareco” com 2 anos e “Pantufa” com 6 meses); (2) escreve os gatos para um std::stringstream; (3) cria dois gatos não inicializados; (4) recupera os dois primeiros gatos do stream para os objectos recém criados (que não estavam inicializados) e; (6) apresenta-os na saída (std::cout).