C语言中Covariant返回值类型是如何定义和使用的?