Enviado em 10/09/2017 - 02:34h
Pessoal, estou pagando estruturas de dados na faculdade em C++ e essa linguagem é muito louca >.<#ifndef VEICULO_H_ #define VEICULO_H_ #include <iostream> using namespace std; class Veiculo { protected: string nome; public: Veiculo(const char *nome) { this->nome = string(nome); cout << "Criação de Veículo" << nome << endl; } ~Veiculo(){ cout << "Destruição de Veículo" << nome << endl; } }; class Terrestre : public Veiculo { public: Terrestre() : Veiculo(nome){ this->nome = Veiculo::nome; cout << "Criação de Terrestre" << nome << endl; }; ~Terrestre() : Veiculo() { cout << "Destruição de Terrestre" << nome << endl; } }; class Aquatico : public Veiculo { public: Aquatico() : Veiculo(nome) { this->nome = Veiculo::nome; cout << "Criação de Aquatico" << nome << endl; }; ~Aquatico() { cout << "Destruição de Aquatico" << nome << endl; } }; class Aereo : public Veiculo { public: Aereo() : Veiculo(nome) { this->nome = Veiculo::nome; cout << "Criação de Aereo" << nome << endl; }; ~Aereo() { cout << "Destruição de Aereo" << nome << endl; } }; #endif /* VEICULO_H_ */
#include <iostream> #include "veiculo.h" using namespace std; int main() { cout << "Segunda pratica de AED em C++" << endl; Veiculo v1("v1"); Terrestre t1("t1"); Aquatico aq1("aq1"); Aereo ar1("ar1"); }
Enviado em 10/09/2017 - 20:17h
Seu veículo aceita const char* (string literal), porém você está chamando com std::string...#ifndef VEICULO_H_ #define VEICULO_H_ #include <iostream> #include <string> using namespace std; class Veiculo { protected: string nome; public: Veiculo(const string& arg) : nome{arg} { cout << "Criação de Veículo " << nome << endl; } ~Veiculo() { cout << "Destruição de Veículo " << nome << endl; } }; class Terrestre : public Veiculo { public: Terrestre(const string& arg) : Veiculo(arg) { cout << "Criação de Terrestre " << nome << endl; } ~Terrestre() { cout << "Destruição de Terrestre " << nome << endl; } }; class Aquatico : public Veiculo { public: Aquatico(const string& arg) : Veiculo(arg) { cout << "Criação de Aquatico " << nome << endl; } ~Aquatico() { cout << "Destruição de Aquatico " << nome << endl; } }; class Aereo : public Veiculo { public: Aereo(const string& arg) : Veiculo(arg) { cout << "Criação de Aereo " << nome << endl; } ~Aereo() { cout << "Destruição de Aereo " << nome << endl; } }; #endif /* VEICULO_H_ */
using namespace std;
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Como dividir duas janelas igualmente e lado-a-lado na sua tela
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
MOVER ARQUIVO ENTRE PARTIÇOES (0)
Ocomon 6.0.1 - Problemas ao editar configurações estendidas (0)
Ingress NGINX Controller CVSS base score of 9.8 (5)