Lezen in het Engels

Delen via


Compilerfout CS0453

Het type 'Typenaam' moet een niet-null-waardetype zijn om dit te kunnen gebruiken als parameter 'Parameternaam' in het algemene type of de methode 'Generic Identifier'

Deze fout treedt op wanneer u een argument voor een niet-waardetype gebruikt bij het instantiëren van een algemeen type of methode met de waardebeperking. Dit kan ook gebeuren wanneer u een argument voor het type null-waarde gebruikt. Zie de laatste twee regels code in het volgende voorbeeld.

Opmerking

Met de volgende code wordt deze fout gegenereerd.

// CS0453.cs  
using System;  
public class HV<S> where S : struct { }

// CS0453: string is not a value type
public class H1 : HV<string> { }

// CS0453: H1 is a class, not a struct
public class H2 : HV<H1> { }

// CS0453: HV is based on a class, not a struct
public class H3<S> : HV<S> where S : class { }
public class H4<S> : HV<S> where S : struct { } // OK

// CS0453: HV accepts a nullable int type
public class H4 : HV<int?> { }

// CS0453: HV is based on Nullable type of int
public class H5 : HV<Nullable<Nullable<int>>> { }

Zie ook