有谁知道如何停止以下问题:有时您必须使用 Try-Catch 块来查看值是否可以转换为预期类型。例如,如果您不知道原始值是一个字符串,则不能只使用 TryParse。不幸的是,我刚刚发现了一个让生活变得困难的 Visual Studio IDE 怪癖。要查看这一点,请创建一个 Winforms 项目并将以下代码添加到表单加载中: private void Form1_Load(object sender, EventArgs e) { Stopwatch stopWatch = new Stopwatch(); stopWatch.Start(); int numTries = 1000; object obj = ""; for (int i = 0; i < numTries; i++) { try { int val = (int)obj; } catch (System.InvalidCastException) { } } TimeSpan ts = stopWatch.Elapsed; string elapsedTime = $"{numTries} failed try-catch took a time of {ts.Hours:00}:{ts.Minutes:00}:{ts.Seconds:00}"; MessageBox.Show(elapsedTime); }当我在 IDE 中运行它时,代码需要 17 秒来处理 1000 个失败的 try-catch 块。相比之下,如果我在 IDE 之外运行调试版本,花费的时间太短,甚至无法注册。这是我正在使用的编辑器的代码调试问题。我使用的是 Visual Studio 2017 Enterprise,版本 15.4.0,.NET Framework 4.7.02046
1 回答
- 1 回答
- 0 关注
- 115 浏览
添加回答
举报
0/150
提交
取消