2016-11-12 51 views
-2

我想几个数值从只读property.in下面是我的代码返还财产几夭值

Public Class Class1 
      ReadOnly Property Ca As New Class2 
End Class 





Public Class Class2 

     ReadOnly Property getass(q As Integer, ww As String) As Integer 
      Get 
       Codes that return q And ww 

      End Get 

     End Property 
End Class 


Public Class Form1 
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load 
     Dim a As New Class1 
     Dim ret As Integer 
     Dim qq As Integer = Nothing 
     Dim qqq As String = Nothing 
     ret = a.Ca.getass(qq, qqq) 
    End Sub 
End Class 

我想最终得到的qq = q和QQQ = WW ... 感谢

+0

“我想”是不是一个问题,并没有告诉我们如果您收到错误,错误是什么以及错误在哪里。请参阅[提问]小心,也采取了[旅游] – Plutonix

+0

如何从像上面的代码 – MDA

+0

只读属性几款超值得到在我真正想要的RET = a.ca.getass(QQ,QQQ)得到的QQ和QQQ是QQ在Student的ID中,qqq是学生姓。如果qq和qqq到达数据库并返回值ret = 0 else ret = 1。 – MDA

回答

1

你不想为此使用一个属性。

,而不是仅仅宣布修改传递的参数像这样子:

Public Class Class2 
    Sub getass(ByRef q As Integer, ByRef ww As String) 
     Dim _q as Integer 
     Dim _w as String 

     'do whatever you want 
     'then assign the final values and end sub 
     q = _q 
     ww = _ww 
    End Sub 
End Class 

然后使用子这样的:

Public Class Form1 
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load 
     Dim a As New Class1 
     Dim qq As Integer = Nothing 
     Dim qqq As String = Nothing 
     a.Ca.getass(qq, qqq) 
     'At this point your local qq and qqq will have the value setted by the getass Sub 
    End Sub 
End Class 

请考虑,这不是一个很好的设计模式,你拥有学生证和姓名的最终意图。

考虑创建一个类“学生”与所有你想要的属性,并Class2中(我想是教室或类似的东西)返回一个“学生”的对象。

或者你可以使用一个KeyValuePair结构

编辑: 如果你仍然想通过一个接口来做到这一点试试这个:

Public Class Class2 
    Public ReadOnly Property getass(ByRef q As Integer, ByRef ww As String) as Integer 
     Get 
     Dim _q as Integer 
     Dim _w as String 

     'do whatever you want 
     'then assign the final values and end sub 
     q = _q 
     ww = _ww 

     return ID 'ID is what you want (Integer) 
     End Get 
    End Property 
End Class 
+0

非常感谢你...如果我想ret返回一个值,如0,表示代码可以访问数据库和返回的值我该怎么办? – MDA

+0

对不起,我不明白你的英语 – theBugger

+0

是的,你是right.My英语虚弱的。希望RET(RET = a.Ca.getass(QQ,QQQ))在我上面的代码返回0,如果运行成功。 – MDA