【发布时间】:2012-09-27 17:42:26
【问题描述】:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Test1
{
public class NewGenerics<T> where T:new(int)
{
}
}
我如何正确编写这段代码,以便它与 C# 5.0 一起编译?
【问题讨论】:
-
不可能,只支持new()
-
你想完成什么?
-
@rkrahl:显然,OP 正在寻求一种放置通用约束的方法,该约束要求
T具有一个采用int值的构造函数。 -
@O.R.Mapper - 也许你清楚。
-
@Oded:对不起,我通常都是为了详细而冗长的解释而不是纯粹的源代码,但是当
new(),即new,调用构造函数的关键字和@ 987654326@,一个空参数列表,需要一个构造函数和一个空参数列表,修改为new(int),即new,调用构造函数的关键字,和(int),一个带有int的参数列表,我认为如何解释这一点非常简单。其他任何东西,例如new-int或new[[int]],我不会认为它那么清楚;-)