A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Programação C++.

Apresentações semelhantes


Apresentação em tema: "Programação C++."— Transcrição da apresentação:

1 Programação C++

2 Programação C++ Uma linguagem em 3 níveis
Programação Orientada a Objetos Predefinição de Parâmetros Redefinição de Operadores Templates STL

3 Uma linguagem em 3 níveis
Baixo nível: C++ com Assembly extern int errno; int funcname(int arg1, int *arg2, int arg3) { long __res; __asm__ volatile ("movl $128, %%eax;" // chamada do siostema "movl %1, %%ebx;" // arg1 "movl %2, %%ecx;" // arg2 "movl %3, %%edx;" ;// arg3 "int $0x80;" // requisita permissao ao sistema "movl %%eax, %0" // salva o resultado : "=m" (__res) /* bind %0 */ : "m" (arg1), "m" ((long) arg2), "m" (arg3) : "%eax","%ebx","%ecx","%edx"); // caso de erro o sistema mais retornar um numero negativo que sera armazenado na var global errno if ((unsigned long)(__res) >= (unsigned long)(-125)) { \ errno = (int) -(__res); \ __res = -1; \ } return (int)__res; }

4 Uma linguagem em 3 níveis
Médio Nível: C++ estruturado (C) #include <iostream> using namespace std; int main(int argc, char **argv) { for(register unsigned char i = 0 ; i <= 10 ; i++) if(i % 2 == 0) cout << (int) i << " "; } return 0;

5 Uma linguagem em 3 níveis
Alto Nível: Orientação a Objetos class Pessoa { private: int idade; public: inline void setIdade(int idade) { this->idade = idade; } inline int getIdade(void) { return this->idade; } }; int main(int argc, char **argv) { Pessoa p; p.setIdade(30); cout << p.getIdade() << endl; return 0; }

6 Programação Orientada a Objetos
Mais claro e organizado Herança

7 Mais claro e organizado
#include <iostream> #include <time.h> using namespace std; class Dado { public: int valor; int sorteia(void) { return valor = (rand() % 6) + 1; } Dado() { srand (time(NULL)); valor = 0; }; int main(int argc, char **argv) { Dado dado1,dado2; cout << dado1.sorteia() << endl; cout << dado2.sorteia() << endl; cout << dado1.valor+dado2.valor << endl; return 0; #include <stdio.h> #include <stdlib.h> #include <time.h> int main(int argc, char **argv) { short int dado1, dado2, soma; srand (time(NULL)); dado1 = (short int) (rand() % 6) + 1; dado2 = (short int) soma = dado1 + dado2; printf("%d\n", dado1); printf("%d\n", dado2); printf("%d\n", soma); return 0; }

8 Predefinição de Parâmetros
#include <iostream> using namespace std; double soma(double a, double b = 1) { return a + b; } int main(int argc, char **argv) { cout << soma(4,6) << endl; cout << soma(2) << endl; return 0;

9 Redefinição de Operadores
#include <iostream> using namespace std; class A { public: double val; double operator+(double b) { return val-b; } }; int main(void) { A a; a.val = 4; cout << (a + 1) << endl; // imprime 3 return 0;

10 Templates #include <iostream> using namespace std;
template<class Type> void imprime(Type p) { cout << p << endl; } int main(void) { imprime(1); imprime("gdp"); return 0;

11 Biblioteca STL #include <iostream> #include <iostream>
#include <deque> using namespace std; // Deque como pilha: int main (void) { deque<char> d; d.push_back('a'); d.push_back('b'); d.push_back('c'); d.push_back('d'); while(!d.empty()) { cout << d.back() << " "; d.pop_back(); } return 0; #include <iostream> #include <deque> using namespace std; // Deque como fila int main (void) { deque<char> d; d.push_back('a'); d.push_back('b'); d.push_back('c'); d.push_back('d'); while(!d.empty()) { cout << d.front() << " "; d.pop_front(); } return 0;


Carregar ppt "Programação C++."

Apresentações semelhantes


Anúncios Google