0

我正在尝试这样做:

var player:Player = new Player();  // class Player extends PlayerCore

var playerCore:PlayerCore = cast (player, PlayerCore);
var playerStr:String = Serializer.run(playerCore);

编译,但给出运行时错误:

compile_server.command: line 3:  4267 Bus error: 10           ../bin/Server/Main

Cast 有效,它在序列化程序行上失败。除了这两个都是真的Std.is(playerCore, PlayerCore)Std.is(playerCore, Player)我不知道这是否是预期的结果。这是 Haxe / hxcpp 错误还是我做错了什么?

或者,我需要将 Player 类型的对象转换为它的父类型 PlayerCore (“剥离” Player 类型功能),然后对其进行序列化。有没有办法正确地做到这一点,还是我需要手动创建新对象并复制所有参数?

Haxe 3.2.1,hxcpp 3.2.180,mac 目标

4

0 回答 0