您好 android/Java 开发人员,
当一个函数调用一个函数并且该函数调用另一个函数等等时,有多少调用(堆栈长度)会让我进入堆栈溢出?有一般的经验法则吗?
我问的原因是因为我现在对我的 5 人纸牌游戏更有效(设计明智)
解决方案1:
for(int i=0;i<100;i++){
p1.play();
p2.play();
p3.play();
p4.play();
}
解决方案2:
p1.play(); //where p1.play() calls p2.play() and so on until p4 calls p1 again.
// this will go on for 100 times
我更喜欢解决方案 2,所以如果发生崩溃,我可以看到从 i=0 处的 p1 到 i=100 处的 p4 的所有函数调用
但是对于解决方案 1,堆栈要短得多,但是当发生崩溃时,我会在循环的开头看到一个调用函数 play() 发生崩溃的地方
你有什么建议?我知道这是 1 中的 2 个问题,但它们非常相关
谢谢你们