Um exemplo básico para quem está começando a desenvolver e procura algum texto sobre programação orientada a objetos POO, nesse exemplo com a linguagem de programação C++.
Se você chegou aqui e vai continuar a ler o texto, vou assumir que você sabe o mínimo da linguagem de programação C, ou C++.

Code Block – c++
O exemplo foi testado com:
Code::Blocks 17.12!
Baixe aqui==> http://codeblocks.org/downloads/binaries
1) Crie um projeto novo, escolha “Console applications” de um nome para seu projeto e salve;
2) No menu File / New / Classe (coloque o nome para sua classe ) essa IDE já vai criar para você dois arquivos <nomeClasse.h> e <nomeClasse.cpp>
3) No exemplo abaixo eu escolhi o nome Ciente
Altere os três arquivos gerados pelo conteúdo dos exemplos abaixo:
I ) Arquivo: Cliente.h
/* ** No arquivo [nomeclasse.h] criamos ** as definições da nossa classe ** métodos e atributos da mesma. ** Em um projeto C++ normalmente esse ** arquivo fica em uma pasta [include\] ** ** #Susviela ** */ #ifndef CLIENTE_H #define CLIENTE_H #include <string> using namespace std; class Cliente { public: Cliente(); virtual ~Cliente(); void setNome(string nome); string getNome(); void setEmail(string email); string getEmail(); void setIdade(int idade); int getIdade(); void setSaldo(float saldo); float getSaldo(); protected: private: string nome; string email; int idade; float saldo; }; #endif // CLIENTE_H
II) Arquivo: Cliente.cpp
/* ** O desenvolvimento dos métodos ** é codificado no arquivo ** nomeado [nomedaclasse.cpp] que ** normalmente fica em uma pasta [src\] ** ** #Susviela ** */ #include "Cliente.h" Cliente::Cliente() { // o construtor por default tem o mesmo nome classe this->nome = "Sem nome"; this->email = "Sem email"; this->idade = 0; this->saldo = 0.00; } Cliente::~Cliente() { // e o destrutor por default tem o mesmo nome classe com um ~ antes //dtor } void Cliente::setNome(string nome ){ this->nome = nome; } string Cliente::getNome(){ return this->nome; }
III) Arquivo: main.cpp
/* ** Programa principal ** ** #Susviela */ #include <iostream> using namespace std; #include "Cliente.h" int main(){ Cliente oCliente; // cria/instancia um objeto oCliente cout << "Nome cliente: " << oCliente.getNome() << endl; oCliente.setNome("Carlos Susviela"); cout << "Nome cliente: " << oCliente.getNome() << endl; return 0; }
Uma breve explicação:
I) No arquivo [Cliente.h] criamos as definições, com os métodos e atributos da nossa classe, onde os métodos tem visibilidade pública e os atributos são privados da classe, ou seja só de dentro da classe eles podem ser manipulados;
II) No arquivo [Cliente.cpp] é onde desenvolvemos nossa classe, ai vamos codificar os nossos métodos que interagem com a nossa classe.
Veja que o método construtor por padrão leva o mesmo nome da classe, ai é o local de inicializar algum atributo se for necessário.
Cliente::~Cliente()
O método destrutor é por padrão o nome da classe com um [~] antes do mesmo, esse método é chamado automaticamente quando a classe não será mais utilizada ( quem sabe, seria um bom local para encerrar a conexão com o banco de dados ? ) ;
III) Esse é o nosso programa em C++ propriamente dito onde geralmente colocamos a função main.
Veja que eu instanciei o objeto com a sintaxe padrão do C/C++ ou seja:
int idade ( define a variável idade como inteira )
Cliente oCliente (define o objeto como uma instância da classe Cliente;
Na primeira linha:
cout << "Nome cliente: " << oCliente.getNome() << endl;
Como o método getNome retorna o valor padrão que eu defini na classe, por isso deve imprimir no terminal [ Nome cliente: Sem Nome ]
Já nas linhas seguinte :
oCliente.setNome("Carlos Susviela"); cout << "Nome cliente: " << oCliente.getNome() << endl;
O método setNome inclui um valor ao atributo nome e ao ser solicitado o valor do atributo com o método getNome() já temos o novo valor;
Conclusão:
Esse texto é só uma pincelada nesse tema muito importante para quem está estudando programação e tem apenas a pretensão de servir como ajuda. Dúvidas, críticas construtivas ou correções, sinta-se a vontade em contactar comigo.
#susviela
Ajude a manter o BLOG – Faça uma Colaboração :
Criptomoeda Doge:
D7erXNGo3cYcXhVnPny3CGwrr2yc9azuAV
– – / / – –
—- [ Conheça nosso sistema de gestão comercial: POWER Admc ] —-
https://poweradmc.wordpress.com/
Nice contents, thanks for putting in good piece of info.