我在我的代码中使用了一个类C
,并且我向一个向我提供服务API的团队指定他们提供的新函数的返回类型应为C
。我已经在我的代码中使用了我的C
,并且更新了他们的金块包我也有C
。两个C
都严格相同(在类的定义中,它们显然不在同一名称空间中)。
我该怎么办?我应该尽可能在最低级别写一个明显的包装器吗?什么是最佳做法?
答案 0 :(得分:0)
您应该指定名称空间,例如:namespace.your_class_name
答案 1 :(得分:0)
你还能做什么?您的C
及其C
不是同一类,即使它们具有相同的结构。所以是的 - 必要时你必须在两个方向之间进行映射。如果您的团队和团队提供的服务“足够接近”(比如在同一家公司工作) - 最好的办法可能是两个团队使用共同组件和普通类型,那么您将只有一个C
。其他选项包括(作为其包的消费者)使用他们的C
类型而不是您自己的类型(当然不总是可能或可取的)。您也可以使用动态来平等对待这两种类型,但我当然不建议这样做。