Vb.net 如何使用函数创建方法?

Vb.net 如何使用函数创建方法?,vb.net,class,Vb.net,Class,如何做一个函数扩展的方法?这里我有一个类,其中有一个方法和一个函数作为示例 class myClass public sub method() 'some method end sub public function func() 'some function end function end class 我想调用该方法,然后该函数作为该方法的扩展,如下所示: dim x as new myClass x.method.func 我该怎么做?从昨晚开始我就一直在找这个,但运气不好。首先,

如何做一个函数扩展的方法?这里我有一个类,其中有一个方法和一个函数作为示例

class myClass
public sub method()
'some method
end sub

public function func()
'some function
end function

end class
我想调用该方法,然后该函数作为该方法的扩展,如下所示:

dim x as new myClass
x.method.func

我该怎么做?从昨晚开始我就一直在找这个,但运气不好。首先,函数是一种方法。
Sub
函数都是方法。其次,你不能做你说你想做的事。这并不是说第二种方法是第一种方法的扩展。第二个是根据第一个的结果调用的。要实现这一点,第一个必须产生一个结果,这意味着它必须是一个函数。
函数
返回某物,而
子函数
不返回某物,对该返回值调用第二个方法。例如,如果您这样做:

Dim x = y.Method1().Method2()
那么这就相当于:

Dim z = y.Method1()
Dim x = z.Method2()
如果
Method1
返回的对象类型为
Method2
的成员,则第一个对象只是一个简写形式,并且是无效语法。在您的场景中,情况并非如此,因此停止尝试。只要这样做:

Dim x As New [myClass]

x.method()
x.func()
将代码分成两行没有什么大不了的,即使您可以在一行中完成。你不能一次完成,所以就两次完成吧