![]() |
1
7
警告只会让您知道函数何时返回
如果返回值是引用类型,则会收到警告。
但是您的函数有一个值类型的返回值,这些值不能是
这是因为这个函数中的函数名充当结果变量。通过将值分配给函数名而不是使用
在初始化变量之前将其与使用变量进行比较:
|
![]() |
2
6
它是基本语言的一部分。所有基本函数都有返回类型。如果不指定返回类型,则假定该类型为 对象 . 因此编译器不能警告您丢失的返回,因为它不知道您是有意跳过返回,还是因为您利用了该语言的默认返回值特性。 由此 http://msdn.microsoft.com/en-us/library/sect4ck6(VS.80).aspx
|
![]() |
3
0
对我来说,那看起来像个虫子。我可以在VS2008 SP1中复制它。 有趣的是,如果它是一个引用类型,它就可以工作,但是如果它是一个值类型,它就不能工作。 |
![]() |
4
0
您不一定需要一个变通方案,但我只是在想:您可以使函数的返回类型 Nullable . 在运行时,如果函数没有反映任何内容,您知道程序员没有显式地分配返回值。当然,这只适用于自然不返回任何值的函数。而且在很多方面效率低下。 |
![]() |
5
0
我为同样的问题浪费了七个小时。在我的情况下(使用Visual Studio 2012),编译以编译错误结束:
(文本是从德语错误信息中翻译出来的,我希望它能被正确翻译。) 由于这条消息没有帮助,我将我的项目还原到它编译的状态,并最终跟踪到类似于以下内容的内容:
如果我将exit函数替换为return false,或者插入somefunction=false,那么编译器错误将不会出现。 所以是的,正如前面所述,VisualBasic应该将返回值默认为返回类型的默认值,但是它以某种方式破坏了编译。 我怀疑这种行为很难重现。我的底线是:显式设置返回值。它对代码更清楚,可能会节省7个小时的调试时间。 |
![]() |
Karl · 如何引发PrintPage的事件? 2 年前 |
![]() |
Daniel · LINQ从列表的dataTable中提取部分匹配 2 年前 |
![]() |
limelatte · 如何在datagridview中屏蔽特定列? 2 年前 |
![]() |
Orsi · 选择嵌套列表的最大值和最小值。网 2 年前 |
![]() |
D T · 如何为Excel Com设置公式? 2 年前 |
![]() |
Lenin · 将数组中的每个元素与另一个数组中的相应元素相乘 2 年前 |