【问题标题】:Restricted access of function in Haxe?Haxe 中的功能访问受限?
【发布时间】:2013-01-17 01:14:36
【问题描述】:

我最近开始玩 Haxe,在使用 AS3 一段时间后,在编写一个非常简单的游戏引擎时遇到了问题:

我有一个名为World 的课程。 World 所做的其中一件事是跟踪游戏中的所有Entity 对象。我希望这个Entity 对象列表只能从引擎内部访问。引擎的用户应该不能直接修改列表。

在 AS3 中,我可以简单地使用 internal 关键字来访问同一包中的其他类。当这还不够时,我可以定义一个自定义命名空间并将其用作我的访问修饰符。但 Haxe 似乎两者都没有。

TL;DR:如何限制对特定包/命名空间的变量访问?如果不可能,我还有什么其他选择?

【问题讨论】:

    标签: actionscript-3 game-engine haxe


    【解决方案1】:

    如果您使用的是 Haxe 2.11(每晚构建),则可以使用 @:allow

    复制自Haxe.org wiki:

    @:allow(my.pack) :这将允许访问 a 的所有私有字段 类到包 my.pack 中的所有类(及其 子包)。有关详细信息,请参阅访问控制。 (自 2.11 起)

    Access Control 上的更详细文档。

    【讨论】:

      猜你喜欢
      • 2019-09-12
      • 2013-08-09
      • 1970-01-01
      • 2019-12-11
      • 1970-01-01
      • 1970-01-01
      • 2011-06-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多