Php 错误1170:函数不返回av值
我是flash新手,我正在制作一个用鼠标控制的游戏。但我得到了一个错误: 错误1170:函数不返回值 我正在尝试编写一个getter来将bulletType返回到main.asPhp 错误1170:函数不返回av值,php,actionscript-3,Php,Actionscript 3,我是flash新手,我正在制作一个用鼠标控制的游戏。但我得到了一个错误: 错误1170:函数不返回值 我正在尝试编写一个getter来将bulletType返回到main.as public function get(_bulletT:String):String { for (var i = 0; i < _bulletT.length; i++) { if (_bulletT.charAt(i) == "star") {
public function get(_bulletT:String):String
{
for (var i = 0; i < _bulletT.length; i++)
{
if (_bulletT.charAt(i) == "star")
{
return "star";
"star";
}
else
{
return "circle";
"circle";
}
}
公共函数get(\u bulletT:String):String
{
对于(变量i=0;i<\u bulletT.length;i++)
{
如果(_bulletT.charAt(i)=“星”)
{
返回“星”;
“明星”;
}
其他的
{
返回“圈”;
“圈”;
}
}
它要求什么值?在您的场景中,当
\u bulletT
的长度为零时,函数可能实际上根本不返回任何内容–它根本不会为块输入,而这(根据您提供的代码)是您拥有return
语句的唯一位置
可能尝试在for
块之后添加另一个return
语句,或者如果长度为零,则在for
前面抛出一个错误。我建议您以后格式化代码。此外,最好不要将代码写在一行中,因为它没有额外的好处。您的代码将被编译成对象co指示flash播放器将执行
无论如何,您的函数存在一些错误。错误的第一个来源是您将返回值包含在if/else块中。函数体本身没有指定返回值。下面是代码的外观:
public function get(_bulletT:String):String {
for (var i:int = 0; i < _bulletT.length; i++) {
if (_bulletT.charAt(i) == "star") {
return "star";
}
}
return "circle";
}
但是,我认为这不是你真正想要的。你可能想确定\u bulletT是否持有价值之星。如果是这样,那么你可以:
public function get(_bulletT:String):String {
if (_bulletT == "star") {
return "star";
}
return "circle";
}
您正在命名您的函数get,这是Actionscript在处理类和为类创建getter/setter属性时的保留字。无论如何,我希望这会有所帮助。请尝试准确解释您试图实现的目标,用标记突出显示代码并正确格式化。我对这个错误的猜测r表示,如果_bulleT.length为,则返回语句可能无法访问
public function get(_bulletT:String):String {
if (_bulletT == "star") {
return "star";
}
return "circle";
}