只是做一些关于泛型的阅读.我写了一些小试验......
public interface IAnimal
{
void Noise();
}
public class MagicHat<TAnimal> where TAnimal : IAnimal
{
public string GetNoise()
{
return TAnimal.//this is where it goes wrong...
}
}
Run Code Online (Sandbox Code Playgroud)
但由于某种原因,即使我在Type上放了一个通用约束,它也不会让我返回TAnimal.Noise()......?
我错过了什么吗?
小智 8
您需要一个可以调用Noise()的对象.
public string GetNoise( TAnimal animal )
{
animal.Noise()
...
}
Run Code Online (Sandbox Code Playgroud)