
Enviado em 13/01/2018 - 19:27h
Boa tarde, estou apredendo polimorfismo de sobrecarga porém o compilador está retornando esses erros:||=== Build: Debug in Sobrecarga Ex.A13a (compiler: GNU GCC Compiler) ===|
/home/TheBugLog/Documents/POO/Sobrecarga Ex.A13a/main.cpp||In function ‘int main()’:|
/home/TheBugLog/Documents/POO/Sobrecarga Ex.A13a/main.cpp|11|error: call of overloaded ‘reagir(int, double)’ is ambiguous|
include/Cachorro.h|19|note: candidate: void Cachorro::reagir(short int, short int)|
include/Cachorro.h|20|note: candidate: void Cachorro::reagir(short int, float)|
||=== Build failed: 1 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|
#ifndef CACHORRO_H
#define CACHORRO_H
#include <string>
#include "Animal.h"
class Cachorro : public Animal{
public:
void locomover();
void alimentar();
void emitirSom();
public:
void reagir(bool dono);
void reagir(std::string frase);
void reagir(short hora, short minutos);
void reagir(short idade, float peso);
};
#endif // CACHORRO_H
#include <iostream>
#include "Cachorro.h"
void Cachorro::locomover(){
std::cout << "Correndo..." << std::endl;
}
void Cachorro::alimentar(){
std::cout << "Comendo ração..." << std::endl;
}
void Cachorro::emitirSom(){
std::cout << "Latindo..." << std::endl;
}
//Diferentes reações do cachorro
void Cachorro::reagir(bool dono){
if(dono==true){
std::cout << "Abanando Rabo" << std::endl;
}else{
std::cout << "Rosnando" << std::endl;
}
}
void Cachorro::reagir(std::string frase){
if(frase.compare("Vem aqui")==0){
std::cout << "Abanando rabo e feliz" << std::endl;
}else if(frase.compare("Vem aqui cachorro feio")){
std::cout << "Rosnando e abanando rabo" << std::endl;
}else{
std::cout << "Ignorando" << std::endl;
}
}
void Cachorro::reagir(short hora, short minutos){
if(hora<=12 && minutos<=59){
std::cout << "Abanando rabo e alegre" << std::endl;
}else if(hora<=18 && minutos<=59){
std::cout << "Abanando rabo e latindo" << std::endl;
}else{
std::cout << "Ignorando" << std::endl;
}
}
void Cachorro::reagir(short idade , float peso){
if(idade<=2 && peso <= 0.9){
std::cout << "Abanando rabo (novo e leve)" << std::endl;
}else if(idade>=3 && peso <= 0.9){
std::cout << "Abanando rabo e latindo (velho e leve)" << std::endl;
}else if(idade<=2 && peso >= 1){
std::cout << "Abanando rabo e rosnando (novo e pesado)" << std::endl;
}else{
std::cout << "Ignorando (velho e pesado)" << std::endl;
}
}
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
Instalação dualboot Windows 11 e Debian 13 (6)
Mint Xfce não mantém a conexão no wi-fi (0)
Programa fora de escala na tela do pc (36)
Eu queria adicionar a incon do wifi e deixa transparente no fluxbox no... (0)









