Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Construtor chamando outro construtor da mesma classe. Isso cria 2 objetos?

public SaldoInsuficienteException(double saldo, double valorSaque)
    : this("Tentativa de saque de " + valorSaque + " com saldo de " + saldo)
{
    Saldo = saldo;
    ValorSaque = valorSaque;
}

Gostaria de saber o comportamento em memória desse tipo de construção: É só uma forma de NÃO precisar escrever outro construtor? Isso cria 2 objetos?

Ou, de fato, isso:

public SaldoInsuficienteException(double saldo, double valorSaque)
    : this("Tentativa de saque de " + valorSaque + " com saldo de " + saldo)
{
}

poderia ser substituído (é a mesma coisa que):

public SaldoInsuficienteException(double saldo, double valorSaque, string mensagem)
{

}
1 resposta
solução!

Acredito que o construtor chamado primeiramente repassa a responsabilidade para o segundo construtor o qual fará a verdadeira criação de objeto.

Tanto que ele nem tem implementação interna e faz a transferência de responsabilidade na própria assinatura.