AMXXPawn return关键字

return返回语句可以跳过当前函数体中尚未执行的语句,立即退出当前函数,并设置当前函数的返回值。

返回语句的语法1:return;

返回语句的语法2:return 返回值;

返回值可以是除数组字面量以外的任意表达式。若省略,则隐式返回0。

若函数体内存在多个返回语句,要么全部隐式返回0,要么全部显式设置相同尺寸返回值

返回值和当前函数的值类型标签需一致,否则触发警告:标签不匹配。

若当前函数的调用方试图用变量复制返回值,但函数并未被显式设置返回值,则会触发警告:函数需要设置返回值

返回值是数组,外部插件得到的是数组的相对地址(无法跨插件访问)。当前插件会得到数组的副本。

示例:

#include <amxmodx> static func(bool:p) { new array[] = "??????"; if (p) return array; // 跳过当前函数体中尚未执行的语句,立即退出并设置返回值 array = "114514"; return array; // 退出并设置返回值 } static Float:func2() return random_float(10.0, 20.0); // 返回值和函数的值类型标签需一致(Float标签) public plugin_precache() { register_plugin("测试插件1", "1.0.0", "插件作者"); server_print("[AMXX]分支1返回值:%s 分支2返回值:%s", func(false), func(true)); } // 自然退出函数