Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Programas com a implementação da interface

namespace CaixaRudson
{
    public interface ITributavel
    {
        double CalculaTributos();
    }
}
namespace CaixaRudson
{
    public class ContaInvestimento : Conta, ITributavel
    {
        public double CalculaTributos(ITributavel tributavel)
        {
            return this.Saldo * 0.03;
        }
    }
}
namespace CaixaRudson
{
    public class SeguroDeVida : ITributavel
    {
        public double CalculaTributos()
        {
            return 42.0;
        }
    }
}

na minha classe seguro de vida a interface ITributavel funciona normalmente, já na minha classe ContaInvestimento apresenta o seguinte erro:

Erro CS0535 "ContaInvestimento" não implementa membro de interface "ITributavel.CalculaTributos()" CaixaRudson

não consigo consertar.

desde já obrigado!

2 respostas
solução!

A sua classe ContaInvestimento tem um método errado, o metodo CalculaTributos:

{
    public class ContaInvestimento : Conta, ITributavel
    {
        public double CalculaTributos(ITributavel tributavel)
        {
            return this.Saldo * 0.03;
        }
    }
}

Não pode passar parâmetros nesse método, por que ele só retorna um valor double que é o saldo. Portanto o método deve ficar assim:

{
    public class ContaInvestimento : Conta, ITributavel
    {
        public double CalculaTributos()
        {
            return this.Saldo * 0.03;
        }
    }
}

Nossa, realmente André, muito obrigado, era pra passar esse parâmetro só no método adiciona, acabei passando também no CalculaTributos().

resolvido !