有没有办法在不实际分配矢量的情况下声明推力矢量指针?我需要将此指针用作类中的成员变量。由于我事先并不知道向量的大小,所以我无法将向量静态地分配为成员变量。
答案 0 :(得分:2)
您可以使用:
#include <thrust/device_ptr.h>
#include <thrust/device_vector.h>
template <typename T>
class my_thrust_class
{
public:
thrust::device_ptr<T> my_dptr;
}
声明一个设备指针,然后可以将其初始化为您希望它引用的任何device_vector的开头:
thrust::device_vector<float> my_vec(3);
my_thrust_class<float> A;
A.my_dptr = my_vec.data();