vb.net带参数的类 vbnet fileopen参数

关于VB.NET中-引用类型参数传递的问题1.对象变量与对象本身是不同的,对象变量代表了对象真实数据在内存中的地址.
打个比方 , “对象变量”就象你家的地址,“对象本身”就象你家 。
你不能说你家的地址(xx路xx号xx房)就是你家,但是可以通过这个地址而找到你家 。
2.传值的参数本身是被复制一份的,但这并不意味着它所代表的对象也被复制一份.
有如下一个函数:
Public
Function
Do_delete(ByVal
ps_usr_id
As
String)
As
Boolean
你在调用时可能这样调用:
dim
strID
as
string
strID
=
"kknd001"
if
Do_delete(strID)
then.....
当程序执行到Do_delete函数体里面时ps_usr_id变量其实是按照StrID的值而复制的一个变量 。
vb.net 如何传递类参数线程结束后利用委托生成事件返回,线程应用包括传入和传出参数 。
Public Delegate Sub ThreadCallback(value As ThreadResult)
Public Class Form1
Private WithEvents _th_1 As Thread_1
Protected Overrides Sub OnLoad(e As System.EventArgs)
Dim value As ThreadObject
value.Index = 1
Me._th_1 = New Thread_1(Me)
Me._th_1.Run(value)
MyBase.OnLoad(e)
End Sub
Private Sub Thread_1_End(sender As Object, e As ThreadEventArgs) Handles _th_1.ThreadEnd
Me.TextBox1.Text = e.Result.Text
End Sub
End Class
Public Class Thread_1
Public Event ThreadEnd(sender As Object, e As ThreadEventArgs)
Private _control As Control
Sub New(control As Control)
Me._control = control
End Sub
Public Sub Run(value As Object)
Dim th As New Threading.Thread(AddressOf ThreadProc)
th.Start(value)
End Sub
Private Sub ThreadProc(obj As Object)
Dim value As ThreadObject = CType(obj, ThreadObject)
Dim result As ThreadResult = Nothing
If value.Index = 1 Then result.Text = "测试"
Dim callback As New ThreadCallback(AddressOf ThreadInvoke)
_control.Invoke(callback, result)
End Sub
Private Sub ThreadInvoke(value As ThreadResult)
RaiseEvent ThreadEnd(Me, New ThreadEventArgs(value))
End Sub
End Class
Public Structure ThreadObject
Public Index As Integer
'Public Rect As Rectangle
End Structure
Public Structure ThreadResult
Public Text As String
'Public Rect As Rectangle
End Structure
Public Class ThreadEventArgs
Inherits System.EventArgs
Private _result As ThreadResult
Public ReadOnly Property Result As ThreadResult
Get
Return _result
End Get
End Property
Sub New(value As ThreadResult)
Me._result = value
End Sub
End Class
VB.NET 如何带参数构造函数对象或是类public structure struc
public name as string
public shengao as integer
……
end structure
public items as struc()
readonly property people(argname as string) as struc
get
for each i as struc in items
if i.name=argname then reture i
next
end get
end property
struc可以用class , property可以用function , people通过参数返回一个对象,对象可以来源于某个数组的某个元素,也可以是其他来源 。
people也可以是类的构造方法,而shengao等是类的成员 , 但你的写法是错误的,构造方法必须用new实例化
VB.NET中不定义形式参数的类型,默认是什么类型每个参数的默认传入机制均为ByVal,这意味着过程无法更改基础变量元素 。
如果不指定parametertype , 则默认为Object 。
如何使用VB.NET中可选参数调用方法VB.NET可选参数的默认值必须是一个常数表达式 。

推荐阅读