Vb.net 多播委托未定义错误

Vb.net 多播委托未定义错误,vb.net,Vb.net,这段代码有什么问题?myequation没有定义,我不知道为什么有人能帮忙。它应该被定义,因为我定义了,对吗?我很困惑。或者我没有用正确的方式定义我的问题。就像我说的,谁都能帮忙 Imports System.Delegate Module Module1 Dim a As Integer Dim b As Integer Dim Answer As Integer Dim MyEqaution As Math Private Delegate Su

这段代码有什么问题?myequation没有定义,我不知道为什么有人能帮忙。它应该被定义,因为我定义了,对吗?我很困惑。或者我没有用正确的方式定义我的问题。就像我说的,谁都能帮忙

Imports System.Delegate

Module Module1

    Dim a As Integer
    Dim b As Integer
    Dim Answer As Integer
    Dim MyEqaution As Math

    Private Delegate Sub Math()

    Sub Main()
        Dim MyEqaution As Math
        Dim ask As MyEqaution
        Dim Multiply1 As MyEqaution
        Dim Subtract1 As MyEqaution
        Dim Addition1 As MyEqaution
        Dim Divide1 As MyEqaution
        Dim MyEqationAll As Math

        ask = New MyEqaution(AddressOf Ask1)
        Multiply1 = New MyEqaution(AddressOf Multiply)
        Subtract1 = New MyEqaution(AddressOf Subtract)
        Addition1 = New MyEqaution(AddressOf Addition)
        Divide1 = New MyEqaution(AddressOf Divide)
        MyEqaution = Math.Combine(ask, Multiply1, Subtract1, Addition1, Divide1)
        MyEqationAll.DynamicInvoke("Math")
        Console.ReadLine()
    End Sub

    Sub Ask1()
        Console.WriteLine("Enter First Integer")
        a = Console.ReadLine()
        Console.WriteLine("Enter Second Integer")
        b = Console.ReadLine()
    End Sub

    Sub Multiply()
        Answer = a * b
        Console.WriteLine(Answer)
    End Sub

    Sub Subtract()
        Answer = a - b
        Console.WriteLine(Answer)
    End Sub

    Sub Addition()
        Answer = a + b
        Console.WriteLine(Answer)
    End Sub

    Sub Divide()
        Answer = a / b
        Console.WriteLine(Answer)
    End Sub

End Module

myequation在您的代码中是可变的

Dim语句用法:

Dim variable as Type
在这里:


恕我直言,但是,一切都好吗?它的拼写是“等式”,仅供参考。好吧,我是新来的,所以有什么帮助吗?我在我的代码中这么做了,但它不起作用。我定义错了吗?@naters302检查我的答案。希望有帮助。谢谢,帮助很大。
  Private Delegate Sub Math()
    Sub Main()

        'Dim ask As Math
        'Dim Multiply1 As Math
        'Dim Subtract1 As Math
        'Dim Addition1 As Math
        'Dim Divide1 As Math 
        'ask = New Math(AddressOf Ask1)
        'Multiply1 = New Math(AddressOf Multiply)
        'Subtract1 = New Math(AddressOf Subtract)
        'Addition1 = New Math(AddressOf Addition)
        'Divide1 = New Math(AddressOf Divide)
        'MyEqaution = CType(Math.Combine(ask, Multiply1, Subtract1, Addition1, Divide1), Math)
        'or shorter
         MyEqaution = CType(Math.Combine(New Math(AddressOf Ask1), New Math(AddressOf Multiply), _
                                    New Math(AddressOf Subtract), New Math(AddressOf Addition), New Math(AddressOf Divide)), Math)
        MyEqaution.Invoke()
        Console.ReadLine()
    End Sub