我有一個泛型類,如何在不使用泛型的情況下生成泛型變量?
class ComputeScalar<T> : IComputeVariable where T : struct
{
// This is why i have to use generics.
ComputeBuffer<T> buffer;
T data;
}
class ComputeArray<T> : IComputeVariable where T : struct
{
// This is why i have to use generics.
ComputeBuffer<T> buffer;
T[] data;
}
,我在另一個類中使用這個類的一個列表,
class SomeClass
{
List<IComputeVariable> variables;
}
我創建的接口,因爲在C#中,我們不能使用類型泛型類參數。 (對吧?)我想了解的是如何使「數據」成爲界面的一員?在運行期間,我如何確定數據類型? (數據可以是任何值類型)
緩衝區用於發送數據到GPU,並且必須是通用的。所以第二種選擇不是一種選擇,因爲我需要將不同類型的變量發送到GPU。列表必須是通用的。但我會嘗試第一個。 非常感謝。 – Kayhano 2010-08-04 08:23:34
第一個爲我工作,謝謝:) – Kayhano 2010-08-04 08:54:45