def _pawnHit(state, user, y):
not_user = _notUser(user)
hit = 0
a=[]
for coordinate in y[1]:
if(state.whichUserProper(coordinate[0], coordinate[1]) == not_user):
hit = 1
a.append(coordinate)
if(hit==1):
return [a,True]
for coordinate in y[0]:
if(state.whichUserProper(coordinate[0],coordinate[1] == 7)):
a.append(coordinate)
else:
break
return [a,False]
在 C/C++ 中,我们不能通过引用返回任何在函数内声明的变量(尤其是数组)(它的作用域在函数返回时结束并且变量被销毁),除非它的内存是使用 new/malloc 分配的,然后我们也返回指向数组的指针。
在 python 中,因为我不知道列表的返回是如何发生的。所以我不知道这是否会奏效。列表“a”已在函数内创建。一旦函数的作用域结束,它会被销毁吗?如果是,有什么可能的解决方法?
PS 我知道我可以很容易地返回像return [i,j,[k,m]]
i,j,k,m 是正常变量的这些东西。