如何从子例程调用循环并将另一个子例程调用到被调用的循环子例程

时间:2017-08-07 20:13:00

标签: vb.net

这里我试图将一个包含交换公式(命名为逻辑)的子程序调用到另一个子程序中,该子程序包含一个直接进入主程序的循环语句。

我不想将交换公式调用到循环子例程中。

我想要做的是创建一个循环子程序,我可以在主程序中反复使用不同的子程序。

Module Module1
Dim x, y As Integer
Sub Main()
    calling2(AddressOf forloop , (calling3(AddressOf logic))))
    Console.ReadLine()

End Sub

你可以猜到这不起作用,我不能在主程序的子程序中调用子程序。我想知道如何做到这一点。 如果有人想要阅读它以更好地理解我的问题,那么我的其余代码将在下面显示

Function myswap(ByVal x As Integer, ByVal y As Integer)
    x = x + y
    y = x - y
    x = x - y

End Function

现在是我的循环子程序。我想让它保持不变,所以我可以多次使用它而不需要改变它自己的代码。

Sub forloop()
    Dim i As Integer
    Console.WriteLine("enter how many times to be repeated?")
    Dim c As Integer = Console.ReadLine
    For i = 1 To c

    Next


End Sub

下面是我的调用子程序,我用它来调用子程序到主程序中。如果我只调用一个子程序,则mu程序可以工作,例如 我说调用(AddressOf逻辑) 这很好用但是当我把它们一起叫到它们然后我得到了错误

错误BC30057'公共函数调用2(ByRef b As Action)作为对象的参数太多

Function calling(ByRef a As Action)
    a()

End Function

Function calling2(ByRef b As Action , ByRef n As Action)


End Function

Function logic()
    Console.Write("enter first number:")
    x = Console.ReadLine
    Console.Write("enter second number:")
    y = Console.ReadLine
    Console.Write(x)
    Console.Write("  ,   ")
    Console.WriteLine(y)

End Function

Sub myswap(x, y)
    Console.WriteLine("after swapping:")
    Console.Write(x)
    Console.Write("  ,   ")
    Console.WriteLine(y)
End Sub

Function calling3(ByRef k As Action)

End Function


End Module

0 个答案:

没有答案