我创建了一个结构来构造一个表,其中列是push :: device_vectors,gcc抱怨我没有传递模板参数。
struct table
{
thrust::device_vector *columns;
};
error: argument list for class template "thrust::device_vector" is missing
如何让它通用,我可以为每列提供任何类型的任意模板参数?
例如,一个表可以有2列:1个浮点设备向量和一个整数设备向量。
答案 0 :(得分:1)
编译器不知道要创建哪种类型的device_vector。你应该这样使用
template <typename T>
struct table
{
thrust::device_vector<T> *columns;
};