delegado de casting

Soy bastante nuevo en C #, por lo que mi pregunta puede ser simple, pero aquí va.

He estado tratando de trabajar con delegados, y estoy un poco atrapado con este problema.

.....
    public delegate double delegateA();
    public delegate double delegateB();

    public static double myFunc()
    {
        return 0;
    }
    public static delegateA myTest()
    {
        return myFunc;
    }

    static void Main(string[] args)
    {
        delegateB myFuncDelegate;

        myFuncDelegate = myTest();  // <-- Error: Cannot implicitly convert type....
    }
.....

No sé cómo hacer que esta conversión funcione, a menos que use el mismo delegado que tipo. Pero en mi proyecto, sería más lindo para los delegados tener diferentes nombres (ya que existen en diferentes clases.

Espero que me pueda ayudar.

Respuestas a la pregunta(2)

Su respuesta a la pregunta