为了账号安全,请及时绑定邮箱和手机立即绑定

重命名类型后,我无法访问其某些方法

重命名类型后,我无法访问其某些方法

Go
缥缈止盈 2021-11-01 16:12:54
为了防止在我的项目的不同文件中存在多个依赖项,并且由于我可能会改变数据的呈现方式,我决定为draw2d 包创建一个“接口”(不是在 golang 意义上,而是在架构方式中)由于我不需要其他任何东西,我只是重命名了其中一种类型:type CanvasContext draw2dimg.GraphicContext在我的一个模块中,我有以下代码(路径是 CanvasContext 变量):// initialization and some code omitted for claritypath.SetFillColor(color.RGBA{0x44, 0xff, 0x44, 0xff})path.SetStrokeColor(color.RGBA{0x44, 0x44, 0x44, 0xff})path.SetLineWidth(5)// some more code herepath.Close()path.FillStroke()在路径上的所有这些方法调用中,只有 FillStroke 因编译错误而失败:path.FillStroke 未定义(类型 *drawing.CanvasContext 没有字段或方法 FillStroke)为了防止它,我必须重新定义 FillStroke,而不是任何其他方法,使用:func (cc *CanvasContext) FillStroke() {    gc := draw2dimg.GraphicContext(*cc)    gc.FillStroke()}为什么我只需要重新定义一个而不是任何其他调用?
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 138 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信