为什么我们不能写部分函数?

时间:2016-08-11 17:47:26

标签: .net vb.net partial-classes partial-methods

我们假设我们有一个名为Partial的{​​{1}} Class,如下所示:

Foo

这是一个名为Partial Public Class Foo Partial Private Sub Bar(lorem As String) End Function Private Sub Bar(lorem As String) 'Do something End Function End Class 的{​​{1}},并且有一个Class方法。我的问题是:为什么使用这样的Foo Partial是非法的:

Partial

2 个答案:

答案 0 :(得分:2)

如果允许返回值,编译器将无法知道如何处理返回值。想象一下,如果部分方法没有实际实现。毕竟,部分方法 没有来实现。这是一个机会。

在这种情况下,返回值会从何而来?如果部分方法的调用者尝试使用返回值但从未实现过该怎么办?

答案 1 :(得分:1)

您可以编写部分函数,​​只需稍微更改语法即可。

Partial Private Sub Bar(lorem As String, ByRef result As Boolean)

这允许编译器删除未实现的函数调用。