循环定义是逻辑错误吗为什么不一样