C++ 对于这句话感到困惑;通过引用调用函数。”;

C++ 对于这句话感到困惑;通过引用调用函数。”;,c++,pointers,terminology,C++,Pointers,Terminology,在你否决投票之前,我不是在问“通过引用调用”是什么意思 我感到困惑的是,这个问题是关于将参数作为引用传递给函数(而不是“按值调用”),还是关于如何设置指向函数的指针 确切的问题是: “通过引用说明函数调用,并给出适当的示例以支持您的答案。” 它的命名方式让它感觉像是在问后者。在我的脑海中,它似乎在询问如何通过引用调用函数,即使用指针 我所说的C++语言:int(*ptr)(int,int); 以后可以分配给一个函数,比如int max(int a,int b) 我知道这篇文章对Stack来说有点

在你否决投票之前,我不是在问“通过引用调用”是什么意思

我感到困惑的是,这个问题是关于将参数作为引用传递给函数(而不是“按值调用”),还是关于如何设置指向函数的指针

确切的问题是:


“通过引用说明函数调用,并给出适当的示例以支持您的答案。”

它的命名方式让它感觉像是在问后者。在我的脑海中,它似乎在询问如何通过引用调用函数,即使用指针

我所说的C++语言:int(*ptr)(int,int); 以后可以分配给一个函数,比如int max(int a,int b)

我知道这篇文章对Stack来说有点奇怪,因为它更像是一个英语问题,但这是我唯一能想到问的地方

编辑:很多人问我第二件事是什么意思。因为我对这个概念还不熟悉,所以我将复制粘贴我的课本上的内容作为例子:(对不起,格式太糟糕了,对不起!)

main(){
int max(int a,int b){…};//典型的最大值函数
内部(*ptr)(内部,内部);
ptr=最大值;
//然后如果你想运行这个程序
m=(*ptr)(2,5);

难道我从来没有听说过这个概念,你在哪里找到的?”通过引用解释函数调用,给出一个合适的例子来支持你的答案-模棱两可/不清楚。去问提出问题/任务的人他们真正的意思。@JVApen在我的教科书中:P我们从来没有在课堂上教过它,这似乎是一个没有人实际使用的奇怪概念。我们的教科书给我们的唯一用途是显示函数所在位置的“地址”(没有人真正需要这样做)通过使指针指向函数,然后执行cout,我不会将该示例称为“通过引用调用函数”。我会将其称为“通过函数指针调用函数”。这就是为什么我们感到困惑的原因-通过指针调用可能是您被问到的问题,但在问题中使用引用使我们感到困惑。
main() {

int max(int a, int b){...}; //Your typical maximum function
int (*ptr)(int, int);
ptr = max;

//Then if you want to run the program

m = (*ptr)(2, 5);
cout << m; //Outputs 5
}