我的代码有问题
Something is wrong with my code
我正在用 C# (visual studio) 制作音乐制作程序。
这是我的代码:
int accCount = 0;
enum accidental { flat, sharp, none }
accidental thisAcc = accidental.none;
if (keyComboBox.SelectedItem.ToString().Length < 8)
{
MessageBox.Show("Please select a key!");
}
else switch (keyComboBox.SelectedItem.ToString())
{
case "C major - A minor":
accCount = 0; thisAcc = accidental.none;
break;
case "G major - E minor":
accCount = 1; thisAcc = accidental.sharp;
break;
...etc..
}
等等...
这些都包含在postButton_click(postButton_Click(object sender, EventArgs e)
但是,当我单击该按钮时,会显示异常
('System.WhosebugException' 类型的未处理异常发生在 Program.exe 中)
如果我 select "break", 这一行是 selected:
object key(int count, accidental ac) (here is the cursor){
return key(0, accidental.none);
}
有人知道哪里出了问题吗?
抱歉,如果这个问题不够具体,请告诉我。
Whosebug 意味着您的应用程序中有一些未绑定的递归。在英语中,这实质上意味着您一次又一次地调用一个方法。
你能看到你是如何在自身内部调用方法 key
的吗?
嗯,是的,看看这段代码(为了便于阅读,根据您的问题重新格式化):
object key(int count, accidental ac)
{
return key(0, accidental.none);
}
这将只调用相同的方法...将调用相同的方法...将调用相同的方法等,直到它用完堆栈 space。
不清楚您打算从这个方法return做什么,但您需要停止以这种无限方式递归。
我正在用 C# (visual studio) 制作音乐制作程序。
这是我的代码:
int accCount = 0;
enum accidental { flat, sharp, none }
accidental thisAcc = accidental.none;
if (keyComboBox.SelectedItem.ToString().Length < 8)
{
MessageBox.Show("Please select a key!");
}
else switch (keyComboBox.SelectedItem.ToString())
{
case "C major - A minor":
accCount = 0; thisAcc = accidental.none;
break;
case "G major - E minor":
accCount = 1; thisAcc = accidental.sharp;
break;
...etc..
}
等等...
这些都包含在postButton_click(postButton_Click(object sender, EventArgs e)
但是,当我单击该按钮时,会显示异常
('System.WhosebugException' 类型的未处理异常发生在 Program.exe 中)
如果我 select "break", 这一行是 selected:
object key(int count, accidental ac) (here is the cursor){
return key(0, accidental.none);
}
有人知道哪里出了问题吗?
抱歉,如果这个问题不够具体,请告诉我。
Whosebug 意味着您的应用程序中有一些未绑定的递归。在英语中,这实质上意味着您一次又一次地调用一个方法。
你能看到你是如何在自身内部调用方法 key
的吗?
嗯,是的,看看这段代码(为了便于阅读,根据您的问题重新格式化):
object key(int count, accidental ac)
{
return key(0, accidental.none);
}
这将只调用相同的方法...将调用相同的方法...将调用相同的方法等,直到它用完堆栈 space。
不清楚您打算从这个方法return做什么,但您需要停止以这种无限方式递归。