如何使用几行代码生成StackOverflowException?

时间:2010-12-17 16:09:00

标签: c# .net stack-overflow

如何使用最少的代码行生成StackOverflowException

8 个答案:

答案 0 :(得分:41)

throw new StackOverflowException();

作弊,我知道......:)

答案 1 :(得分:22)

像这样:

A() { new A(); }

答案 2 :(得分:18)

不是最短的但很有趣:)

public static bool IsNotEmpty(string value)
{
    return !IsEmpty(value);
}

public static bool IsEmpty(string value)
{
    return !IsNotEmpty(value);
}

public static void Main()
{
    bool empty = IsEmpty("Hello World");
}

答案 3 :(得分:5)

public static void Main()
{
  Main();
}

答案 4 :(得分:4)

我总是使用这段代码(因为它更难检测): - (

private int _num;
public int Num {
   get { return Num; }
   set { _num = value; }
}

答案 5 :(得分:3)

在伪代码中

func(): call func()

答案 6 :(得分:2)

public int Method(int i)
{
  return i + Method(i + 1);
}

我认为这应该有效。通常,任何不终止的递归。

答案 7 :(得分:1)

运行此代码(递归):

f () {
       f();
    }