Você está na página 1de 3

DEITEL. C++ Como Programar.

Cap. 1 – Introdução aos computadores e à programação C++

UML (pág. 85): Para uma discussão mais completa da UML, consulte o site do OMG na Web
(www.omg.org) e o documento com as especificações oficiais da UML 1.3
(www.omg.org/uml/). Muitos livros sobre UML foram publicados. UML Distilled: Second
Edition, por Martin Fowler (com Kendall Scott), oferece uma introdução detalhada à versão 1.3
da UML, com muitos exemplos. The Unified Modeling Language User Guide, escrito por Booch,
Rumbaugh e Jacobson, é o tutorial definitive para a UML.

Em C++ os STREAMS padrões são: para entrada cin (normalmente associado ao teclado), para
saída cout (normalmente associado ao vídeo) e o cerr (normalmente associado à tela, utilizado
para exibir mensagens de erro).

Operadores de inserção no stream: saída de dados <<, entrada de dados >>.

USING: são comandos que nos ajudam a eliminar a necessidade de repetir o prefixo std::. A
partir do ponto em que incluímos estes comandos using, podemos escrever apenas cout em
vez de std::cout, por exemplo.

Objetos: são componentes de software reutilizáveis que MODELAM coisas no mundo real. São
criados a partir de modelos chamados CLASSES.

Os objetos tem ATRIBUTOS (como tamanho, forma, cor, peso, etc.) e exibem
COMPORTAMENTOS.

Dica: Os seres humanos aprendem sobre objetos ESTUDANDO SEUS ATRIBUTOS E


OBSERVANDO SEUS COMPORTAMENTOS.

A programação orientada a objetos (OOP) modela objetos do mundo real através de duplicatas
em software. Ela tira partido de relações de classe, nos quais os objetos de uma certa classe
TEM AS MESMAS CARACTERÍSTICAS. Aproveita-se da relação de herança e até herança
múltipla, em que novas classes derivadas são criadas herdando características de classes
EXISTENTES e ainda contendo suas PRÓPRIAS CARACTERÍSTICAS ÚNICAS.

A OOP modela a comunicação entre objetos através de mensagens.

A OOP ENCAPSULA dados (atributos) e funções (comportamentos) em OBJETOS.

Os objetos têm a propriedade de OCULTAÇÃO DE INFORMAÇÃO. Embora objetos possam


saber como se comunicar uns com os outros através de interfaces BEM-DEFINIDAS,
normalmente os objetos não têm permissão de saber detalhes de implementação de outros
objetos.

A ocultação de informações é CRUCIAL para a boa engenharia de software.

Cap. 2 – Estruturas de controle

C++ oferece um OPERADOR CONDICIONAL ( ?: ) bastante semelhante à estrutura if/else. O


operador é o único operador ternário de C++ - ele aceita três operandos. Os operandos,
juntamente com o operador condicional, formam uma expressão condicional. O primeiro
operando é uma condição; o segundo operando é um valor para a expressão condicional
interna, se a condição é true; e o terceiro operando é o valor para a expressão condicional
inteira se a condição é false. Por exemplo, o comando de saída

cout << ( nota >= 60 ? “Aprovado” : “Reprovado” );

contém uma expressão condicional que produz como resultado (valor da expressão) o string
“Aprovado” se a condição nota >= 60 for true e produz como resultado o string “Reprovado”
se a condição for false. Deste modo, o comando com o operador condicional executa
essencialmente o mesmo que o comando if/else precedente. Como veremos, a precedência do
operador condicional é baixa; assim necessitamos dos parênteses na expressão precedente.

Dica: Divisão por zero causa erro fatal. Quando houver essa possibilidade lembrar de tratar a
mesma no código, colocando por exemplo uma mensagem de erro.

<<Imprimir sobre o OPERADOR DE COERÇÃO static-cast>>


<<Imprimir sobre o OPERADOR DE COERÇÃO static-cast>>
<<Imprimir sobre o OPERADOR DE COERÇÃO static-cast>>
<<Imprimir sobre o OPERADOR DE COERÇÃO static-cast>>

Os programadores podem escrever programas um pouco mais rápido e os compiladores


podem compilar programas um pouco mais rapidamente quando forem usados os operadores
de atribuição “abreviados”. Alguns compiladores geram código que é executado mais rápido
quando são usados operadores de atribuição.

Operadores de incremento e decremento em C++: Se um operador de incremento ou


decremento é colocado antes de uma variável, é chamado de operador de pré-incremento ou
pré-decremento, respectivamente. Se um operador de incremento ou decremento é colocado
depois de uma variável é chamado de operador de pós-incremento e pós-decremento,
respectivamente. Pré-incrementar (pré-decrementar) faz com que uma variável seja
incrementada (decrementada) por 1, sendo o novo valor da variável usado na expressão em
que ela aparece. Pós-incrementar (pós-decrementar) uma variável faz com que o valor atual da
variável seja primeiro usado na variável em que ela aparece, sendo então, após, o valor da
variável incrementado (decrementado) por 1.
137