找回密码
 点一下
查看: 2343|回复: 11

这样的写法有错误么?

[复制链接]
发表于 2010-8-11 11:49:26 | 显示全部楼层 |阅读模式
貌似结构体不能用数组,不知道下面这段代码里面,能不能正确的获取到那个结构体?

[jass]
hashtable ht=InitHashtable()

struct test
endstruct


void testFunc() {
timer tm=CreateTimer()
test ts=test.create()
SaveInteger(ht,GetHandleId(tm),0,ts)
TimerStart(tm,1,false,lambda void(){
timer tm=GetExpiredTimer()
test ts=LoadInteger(ht,GetHandleId(tm),0)//这里获取的结构体是我上面创建的那个么?
ts.destroy()
DestroyTimer(tm)
tm=null
})
tm=null
}
[/jass]
发表于 2010-8-11 12:52:47 | 显示全部楼层
vj?不懂
回复

使用道具 举报

发表于 2010-8-11 17:18:15 | 显示全部楼层
vj不懂哦...
这要看这个struct类型算不算纯粹的整数了...

毕竟hashtable对出出进进的对象类型管得比较严...
回复

使用道具 举报

发表于 2010-8-11 18:29:52 | 显示全部楼层
于是忍不住去看了一下vjass教程... =,=
发现vjass能做的,jass肯花足够的代价也能做到。
vjass更像是一些jass写作技巧的打包...

至于struct这种东西,感觉它的实现过程是在vjass --> jass的编译过程中,而非游戏里。
猜测一个struct类型的对象其实是数组变量的索引???
回复

使用道具 举报

发表于 2010-8-11 18:50:32 | 显示全部楼层
恩,vj是提高编成速度降低运行速度的东西,而且不知道最新的jasshelper支持哪版本
回复

使用道具 举报

发表于 2010-8-11 21:00:57 | 显示全部楼层
不能,因为编译后完全没有ts这个变量.......
回复

使用道具 举报

 楼主| 发表于 2010-8-11 21:26:28 | 显示全部楼层
经过测试,可以的,Hmmmmmmmmm
回复

使用道具 举报

发表于 2010-8-12 11:12:36 | 显示全部楼层
如果如6楼所说,猜测vjass的这些新功能是通过申明对应的全局数组变量作为数据空间,而struct类的这些对象实际上就是和该类相关的全局变量的索引吧...
回复

使用道具 举报

发表于 2010-8-13 17:54:34 | 显示全部楼层
引用第4楼疯人¢衰人于2010-08-11 18:50发表的  :
恩,vj是提高编成速度降低运行速度的东西,而且不知道最新的jasshelper支持哪版本

YDWE1.14就已经支持了!你太out了~
回复

使用道具 举报

发表于 2010-8-13 19:05:25 | 显示全部楼层
那个是1.23哪个版本的记得,我弄这个的时候,ydwe还没发布
回复

使用道具 举报

发表于 2010-8-13 19:17:44 | 显示全部楼层
引用第9楼疯人¢衰人于2010-08-13 19:05发表的  :
那个是1.23哪个版本的记得,我弄这个的时候,ydwe还没发布

对不起~我原来根本不知情!
回复

使用道具 举报

发表于 2010-8-13 20:53:59 | 显示全部楼层
实际上我自己也忘记了,很久没去wc3c了,连名字都不确定了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-11-22 00:47 , Processed in 0.033573 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表