小编jac*_*ckj的帖子

在C++模板函数中,我可以返回一个解除引用的参数类型吗?

我的意思是以下内容.我想要一个模板函数,它接受两个向量迭代器(或两个指向double数组的指针)并返回一个double,它以某种方式与我传递的向量迭代器或数组指针相关.但是,我希望这适用于double或int,或任何算术类型.

我想我不能说:

template <class T> 
T* func(T Begin, T End)

 T new_variable = Begin + 5;

 return (*new_variable);
}
Run Code Online (Sandbox Code Playgroud)

因为编译器不会理解T*的含义.我想到的解决方案是采取我想要返回的内容并将其作为第三个参数:

template <class T> 
void func(T Begin, T End, T* new_variable)

 new_variable = Begin + 5;

 return (*new_variable);
}
Run Code Online (Sandbox Code Playgroud)

这会有用吗?即便如此,还有另一种方法可以做我想做的事情吗?(对不起,如果我还不够清楚的话.)

c++ templates pointers iterator

5
推荐指数
1
解决办法
1909
查看次数

标签 统计

c++ ×1

iterator ×1

pointers ×1

templates ×1