Nullable<T>.Explicit(Nullable<T> to T) Operator

Definition

Defines an explicit conversion of a Nullable<T> instance to its underlying value.

public:
 static explicit operator T(Nullable<T> value);
public static explicit operator T (Nullable<T> value);
static member op_Explicit : Nullable<'T (requires 'T : struct)> -> 'T
Public Shared Narrowing Operator CType (value As Nullable(Of T)) As T

Parameters

value
Nullable<T>

A nullable value.

Returns

T

The value of the Value property for the value parameter.

Examples

The Explicit operator enables code such as the following, which converts a Nullable(Of Int32) value to an Int32 value.

using System;

public class Example
{
   public static void Main()
   {
       var nullInt = new Nullable<int>(172);
       // Convert with CInt conversion method.
       Console.WriteLine((int)nullInt);
       // Convert with Convert.ChangeType.
       Console.WriteLine(Convert.ChangeType(nullInt, typeof(int)));
   }
}
// The example displays the following output:
//       172
//       172
Module Example
   Public Sub Main()
       Dim nullInt = New Nullable(Of Integer)(172)
       ' Convert with CInt conversion method.
       Console.WriteLine(CInt(nullInt))
       ' Convert with CType conversion method.
       Console.WriteLine(CType(nullInt, Integer))
       ' Convert with Convert.ChangeType.
       Console.WriteLine(Convert.ChangeType(nullInt, GetType(Integer)))
   End Sub
End Module
' The example displays the following output:
'       172
'       172
'       172

Remarks

This operator supports the explicit conversion of the current Nullable<T> instance to type T, the type of Value. The syntax for such explicit conversions is language-dependent. You may also be able to perform the conversion by calling the Convert.ChangeType method.

The equivalent method for this operator is Nullable<T>.Value

Applies to