【发布时间】:2020-02-26 16:17:05
【问题描述】:
只是为了检查:如果我想通过一个函数通过 ref 传递一个双指针 float **ptr,我应该将它声明为:
void Func(float **&ptr)
或
Func(float **&&ptr)
?
【问题讨论】:
-
&&是rvalue reference -
&& 含义不同
-
使用
Func(float **&ptr)。此类问题可以通过good textbook 来回答,甚至可以通过反复试验来回答。 -
不要让“指针”部分迷惑你。要通过引用传递任何类型
T,请编写获取T&的函数。对于float**,这意味着float**&。 -
您确定要引用指向指针的指针吗?虽然这可能是正确的做法,但请确定。这么多的间接性通常表明问题考虑得太多或没有考虑得足够远。