= (unsigned long)(-125)) { \ errno = (int) -(__res); \ __res = -1; \ } return (int)__res; }">

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

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

Programação C++. Uma linguagem em 3 níveis Uma linguagem em 3 níveis Programação Orientada a Objetos Programação Orientada a Objetos Predefinição de Parâmetros.

Apresentações semelhantes


Apresentação em tema: "Programação C++. Uma linguagem em 3 níveis Uma linguagem em 3 níveis Programação Orientada a Objetos Programação Orientada a Objetos Predefinição de Parâmetros."— Transcrição da apresentação:

1 Programação C++

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

3 Uma linguagem em 3 níveis Baixo nível: C++ com Assembly 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) Médio Nível: C++ estruturado (C) #include 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 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 Mais claro e organizado Herança Herança

7 Mais claro e organizado #include int main(int argc, char **argv) { short int dado1, dado2, soma; srand (time(NULL)); dado1 = (short int) (rand() % 6) + 1; dado2 = (short int) (rand() % 6) + 1; soma = dado1 + dado2; printf("%d\n", dado1); printf("%d\n", dado2); printf("%d\n", soma); return 0; } #include 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; }

8 Predefinição de Parâmetros #include 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 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 using namespace std; template void imprime(Type p) { cout << p << endl; } int main(void) { imprime(1); imprime("gdp"); return 0; }

11 Biblioteca STL #include using namespace std; // Deque como pilha: int main (void) { deque 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 using namespace std; // Deque como fila int main (void) { deque 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++. Uma linguagem em 3 níveis Uma linguagem em 3 níveis Programação Orientada a Objetos Programação Orientada a Objetos Predefinição de Parâmetros."

Apresentações semelhantes


Anúncios Google