Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Questão na aula 3 da parte 7 com erro?

Bom dia, ao responder a pergunta da questão "Criando delegates" da aula 3 do módulo 7 da formação certificação C#, temos que:

public string InserirTextoEmObjeto(string texto, bool manterMaiusculasMinusculas, object objeto)
{
    ...
}

A assinatura do método InserirTextoEmObjeto combina com quais delegates abaixo?

Dentre a escolha entre duas opções, assumi que

public delegate string D1(string p1, bool p2, object objeto);

e

public delegate string D4(string texto, bool manterMaiusculasMinusculas, object objeto);

estavam corretas. Ao submeter a resposta, a primeira opção apareceu como erro e a mensagem:

"Correta! Esta assinatura combina exatamente com a assinatura de InserirTextoEmObjeto, por mais que o nome dos parâmetros sejam diferentes;"

E a opção que estaria correta segundo o gabarito era

public delegate string D2(string p1, bool p2, MeuObjetoComplexo p3);

Com a mensagem:

"Correta! Esta assinatura combina com a assinatura de InserirTextoEmObjeto, pois nosso método exige um object em último argumento e o tipo MeuObjetoComplexo é mais derivado ainda;"

Só que com isso, temos 3 opções corretas (D1, D2 e D4) e assim não consigo validar se as minhas opções estão de fato corretas ou não. Qual seria a resposta certa nesse caso? A questão realmente está com erro?