VB.Net函数接受可为空的值吗?

问题描述 投票:0回答:1

我想制作一个操纵可为空的子对象。这个想法是让它接受任何可为空的变量,如果它具有值,则覆盖另一个值。这是我写的:

Dim a as int? = 0
Dim b as int? = 1

Sub ApplyChange(Byref Old As Nullable, ByRef Change as Nullable)
    If Change.HasValue Then
        Old = Change
    End IF
End Sub

ApplyChange(a, b)

问题是,我得到一个错误信息:““ HasValue不是Nullable的成员,并且'int?不能转换为Nullable'。这是怎么回事?我该如何制作一个仅接受可为null的子对象?] >

我想制作一个操纵可为空的子对象。这个想法是让它接受任何可为空的变量,如果它具有值,则覆盖另一个值。这是我写的:Dim a as int? = ...

vb.net generics nullable
1个回答
0
投票

请勿将Nullable类用作您的参数类型。使用Nullable(Of T)结构,即您的变量声明为的结构。这个:

© www.soinside.com 2019 - 2024. All rights reserved.