“<expression>”不能用作类型约束

更新:2007 年 11 月

约束列表包括了无法对类型形参进行有效约束的表达式。

约束列表对传递给类型形参的类型实参有一定要求。您可以按任何组合指定下列要求:

  • 类型实参必须实现一个或多个接口

  • 类型实参必须从最多一个类中继承

  • 类型实参必须公开创建代码可访问的无形参构造函数(包括 New 约束)

如果在约束列表中未包括任何具体的类或接口,您可以通过指定以下其中一项来实施更常规的要求:

  • 类型实参必须为值类型(包括 Structure 约束)

  • 类型实参必须为引用类型(包括 Class 约束)

不能为同一类型形参同时指定 Structure 和 Class,并且它们两个都只能指定一次。

**错误 ID:**BC32061

更正此错误

  • 验证表达式及其元素的拼写是否正确无误。

  • 如果表达式不符合前面列出的各项要求,请将其从约束列表中移除。

  • 如果表达式引用接口或类,请验证编译器是否有访问该接口或类的权限。您可能需要限定其名称,并且,可能需要添加对项目的引用。有关更多信息,请参见 有多个同名变量时解析引用 中的“项目引用”。

请参见

任务

如何:限定已声明的元素名

如何:在 Visual Studio 中添加或移除引用 (Visual Basic)

概念

Visual Basic 中的泛型类型

值类型和引用类型