vbnet類型作為參數(shù) vbnet object類型

如何使用VB.NET中可選參數(shù)調(diào)用方法

VB.NET可選參數(shù)的默認(rèn)值必須是一個常數(shù)表達(dá)式。

在鶴慶等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供網(wǎng)站設(shè)計、網(wǎng)站建設(shè) 網(wǎng)站設(shè)計制作按需網(wǎng)站設(shè)計,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站建設(shè),全網(wǎng)營銷推廣,外貿(mào)營銷網(wǎng)站建設(shè),鶴慶網(wǎng)站建設(shè)費(fèi)用合理。

過程定義中跟在可選參數(shù)后的每個參數(shù)也都必須是可選的。

下面的語法顯示帶VB.NET可選參數(shù)的過程聲明:

Sub sub name(ByVal parameter 1 As data type 1,

Optional ByVal parameter 2 As data type 2 = default value)

調(diào)用帶VB.NET可選參數(shù)的過程

過程在運(yùn)行時無法檢測到給定的參數(shù)是否已被省略,或者調(diào)用代碼是否已顯式提供默認(rèn)值。如果需要弄清楚這一點(diǎn),可以設(shè)置一個不可能的值作為默認(rèn)值。下面的過程定義了可選參數(shù) office,并測試其默認(rèn)值 QJZ 以查看它在調(diào)用中是否已被省略:

Visual Basic

Sub notify(ByVal company As String, Optional ByVal office As String = "QJZ")

If office = "QJZ" Then

Debug.WriteLine("office not supplied -- using Headquarters")

office = "Headquarters" End If

' Insert code to notify headquarters or specified office.

End Sub

如果可選參數(shù)是像 String 這樣的引用類型,只要它不是該變量所預(yù)期的值,就可以使用 Nothing 作為默認(rèn)值。

VB.NET可選參數(shù)和重載

定義帶可選參數(shù)的過程的另一種方法是使用重載。如果有一個可選參數(shù),可以定義過程的兩個重載版本,一個接受此參數(shù),另一個則不帶參數(shù)。此方法隨可選參數(shù)數(shù)目的增加而變得更復(fù)雜。然而,這樣做的優(yōu)點(diǎn)是可以完全確定調(diào)用程序是否提供了每個VB.NET可選參數(shù)。

VB.NET 如何帶參數(shù)構(gòu)造函數(shù)對象或是類

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通過參數(shù)返回一個對象,對象可以來源于某個數(shù)組的某個元素,也可以是其他來源。

people也可以是類的構(gòu)造方法,而shengao等是類的成員,但你的寫法是錯誤的,構(gòu)造方法必須用new實(shí)例化

關(guān)于VB.NET中-引用類型參數(shù)傳遞的問題

1.對象變量與對象本身是不同的,對象變量代表了對象真實(shí)數(shù)據(jù)在內(nèi)存中的地址.

打個比方,“對象變量”就象你家的地址,“對象本身”就象你家。

你不能說你家的地址(xx路xx號xx房)就是你家,但是可以通過這個地址而找到你家。

2.傳值的參數(shù)本身是被復(fù)制一份的,但這并不意味著它所代表的對象也被復(fù)制一份.

有如下一個函數(shù):

Public

Function

Do_delete(ByVal

ps_usr_id

As

String)

As

Boolean

你在調(diào)用時可能這樣調(diào)用:

dim

strID

as

string

strID

=

"kknd001"

if

Do_delete(strID)

then.....

當(dāng)程序執(zhí)行到Do_delete函數(shù)體里面時ps_usr_id變量其實(shí)是按照StrID的值而復(fù)制的一個變量。

vb.net 如何傳遞類參數(shù)

線程結(jié)束后利用委托生成事件返回,線程應(yīng)用包括傳入和傳出參數(shù)。

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

網(wǎng)頁名稱:vbnet類型作為參數(shù) vbnet object類型
URL地址:http://muchs.cn/article14/dospcde.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT、網(wǎng)站設(shè)計、商城網(wǎng)站、App設(shè)計、建站公司、網(wǎng)站維護(hù)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作