C++函数指针和地址 我试图学习C++并在我正在使用的教程中遇到这个令人困惑的例子,也许有人能为我澄清这个问题。

C++函数指针和地址 我试图学习C++并在我正在使用的教程中遇到这个令人困惑的例子,也许有人能为我澄清这个问题。,c++,reference,C++,Reference,以下代码来自教程。如果你愿意,我已经贴上标签了 在C++中,指的是指而不是按值。它不表示地址 请注意,您可能会看到CDummy¶m或CDummy¶m。都一样 在C++中,指的是指而不是按值。它不表示地址 请注意,您可能会看到CDummy¶m或CDummy¶m。都是一样的。 < P>你需要带上你最喜欢的C++书籍并阅读参考文献。 在本声明中 int CDummy::isitme (CDummy& param) param不是一个地址,正如你所相信的那样。这

以下代码来自教程。如果你愿意,我已经贴上标签了 在C++中,指的是指而不是按值。它不表示地址

请注意,您可能会看到CDummy¶m或CDummy¶m。都一样

在C++中,指的是指而不是按值。它不表示地址


请注意,您可能会看到CDummy¶m或CDummy¶m。都是一样的。

< P>你需要带上你最喜欢的C++书籍并阅读参考文献。 在本声明中

int CDummy::isitme (CDummy& param)
param不是一个地址,正如你所相信的那样。这是一个参考

您不是第一个被引用声明中使用的&字符误导的人。这个问题以前在StackOverflow上被问过很多次


但是,在我看来,一本书/指南/教程将有一个更好的起点。

< P>你需要带上你最喜欢的C++书籍并阅读参考文献。p> 在本声明中

int CDummy::isitme (CDummy& param)
param不是一个地址,正如你所相信的那样。这是一个参考

您不是第一个被引用声明中使用的&字符误导的人。这个问题以前在StackOverflow上被问过很多次


但在我看来,一本书/指南/教程将是一个更好的起点。

一元数&返回其操作数的地址。在参数中使用时,它表示按引用传递。

一元&返回其操作数的地址。当在参数中使用时,它表示通过引用传递。

符号有两种不同的含义&:一种作为运算符,另一种作为类型声明符的一部分&i是i的地址,但int&i声明i是对int的引用。符号有两种不同的含义&:一种作为运算符,另一种作为类型声明符的一部分&i是i的地址,但int&i声明i是对int的引用。
#include <iostream>
using namespace std;

class CDummy {
  public:
    int isitme (CDummy *param);
};

int CDummy::isitme (CDummy *param) // <--- 1
{
  if (param == this) return true; // <--- 2
  else return false;
}

int main () {
  CDummy a;
  CDummy *b = &a;
  // pass in the address.
  if ( b->isitme(&a) )
    cout << "yes, &a is b";
  return 0;
}
int CDummy::isitme (CDummy& param) // <--- 1
int CDummy::isitme (CDummy& param)