2
我有一个叫add_vector_to_scalar
的函数,它向矢量(in
)添加一个标量值并将结果存储在另一个矢量(out
)中。我正在学习C++,所以我不知道如何将类型参数设置为?我想添加另一个类型名称T
,但它没有奏效。嵌套的C++模板
template<typename Vector>
void add(Vector& in, Vector& out, T& c) {
transform(in.begin(), in.end(), out.begin(), add_op<int>(c));
}
的载体可以是两个类型:
device_vector<T>
host_vector<T>
的add_op
结构是这样的:
template<typename T>
struct add_op : public thrust::unary_function<T,T> {
const T c;
add_op(T v) : c(v) {}
__host__ __device__
T operator()(const T x) {
return x + c;
}
};
你可以发布“添加另一个typename T”哪些不起作用吗? – Angew