首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Angelscript -预期的',‘或’

Angelscript -预期的',‘或’
EN

Stack Overflow用户
提问于 2014-02-05 01:52:02
回答 1查看 259关注 0票数 0

所以看起来Angelscript和它允许我处理的功能是不一致的。我试图声明一个全局函数:

代码语言:javascript
代码运行次数:0
运行
复制
scrpEngine->RegisterGlobalFunction("float sin(float in)", asFUNCTION(sinCallback), asCALL_CDECL);

我的sin回调函数(即调用sin函数而不必担心它会被重载)如下所示:

代码语言:javascript
代码运行次数:0
运行
复制
float sinCallback(float in) {
    return sin(in);
}

每当我编译脚本时,我都会得到错误,特别是这些错误:

代码语言:javascript
代码运行次数:0
运行
复制
ERROR: System function (1:17) : Expected ')' or ','
ERROR:  (0:0) : Failed in call to function 'RegisterGlobalFunction' with 'float sin(float in)' (Code: -10)

检查文档和头文件,此错误代码属于无效的syntax..however函数声明的语法绝对应该是有效的。有人有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-05 02:38:48

我认为问题在于您正在使用:float sin(float in)注册函数的签名。

我假设"in“应该是根据您的in/out/inout函数的参数的名称,但是AngelScript有用于引用的AngelScript说明符,即float sin(float &in)

这可能是一个bug,或者可能在某个地方被记录为不能将这些关键字用作函数参数名称。

如果您只是更改签名中参数的名称(回调函数中不需要更改)(例如,float sin(float f))或完全删除它(因为签名中根本不需要它) (float sin(float) ),那么您的函数应该可以注册。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21567207

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档