利用haxe重写c++算法,生成lua和js 智能拆牌提示算法代码
利用haxe重写c++算法,生成lua和js 智能拆牌提示算法代码供cocoscreator和cocos2dx调用笔记支持以下类型:Integer(int): 整数类型, 不支持更进一步详细的整数类型,比如short, long啥的, 类似动态语言的做法.
Float: 浮点数, 也是一个浮点走天下.
Boolean(Bool): 布尔, 代表的是true和false.
String: 字符串, 不解释.
Void: 用于表示没有类型和值.
Dynamic: 类似C#中的dynamic类型, 意图在静态语言中加入动态的效果, 个人很欣赏的尝试.
Unknown: 类似javascript中的undefined.
另外, 还有null关键字, 类型是Unknown<0>.
var i : Int = 5;
字符串拼接用+
整形函数是拷贝传递
类和结构体是传引用
结构体初始化
//牌型组合数据结构
typedef CardGroupData = {
//枚举类型
var cgType:Int;
//该牌的价值
var nValue:Int;
//含牌的个数
var nCount:Int;
//牌中决定大小的牌值,用于对比
var nMaxCard:Int;//说明一下nMaxCard,比如说99,他的nMaxCard就是9,比如说33366,他的nMaxCard就是3。被动出牌规则便是通过这个值进行判断是否可以出牌。
};
var uctCardGroupData:CardGroupData = {cgType:0,nValue:0,nCount:0,nMaxCard:0};
总结:上帝的语言还是比较强大的,从c++代码迁移到haxe代码很轻松,测试生成的py,php,js,lua运行效果一致发现lua生成的代码效率比js慢很多,可能递归算法比较复杂,lua虚拟机栈比较小,有待进一步考察
页:
[1]