可能性の重複:
What are the differences between pointer variable and reference variable in C++?アンパサンド(&)記号はC++でどのように機能しますか?
これは私を混乱さ:C &で
class CDummy
{
public:
int isitme (CDummy& param);
};
int CDummy::isitme (CDummy& param)
{
if (¶m == this)
{
return true; //ampersand sign on left side??
}
else
{
return false;
}
}
int main()
{
CDummy a;
CDummy* b = &a;
if (b->isitme(a))
{
cout << "yes, &a is b";
}
return 0;
}
は通常、VARのアドレスを意味しています。ここではどういう意味ですか?これはポインタ記法の素晴らしい方法ですか?これはポインタなので、私はそれがポインタ表記であると仮定している理由は、結局はポインタであり、2つのポインタの等しいかどうかをチェックしているからです。おかげさまで
1)変数
int x;
void* p = &x;
//p will now point to x, as &x is the address of x
2)のアドレスを取得機能
void foo(CDummy& x);
//you pass x by reference
//if you modify x inside the function, the change will be applied to the original variable
//a copy is not created for x, the original one is used
//this is preffered for passing large objects
//to prevent changes, pass by const reference:
void fooconst(const CDummy& x);
3)を参照して、引数を渡す:
無礼を意図するものではありませんが、これについてはC++の入門書の最初の数章で説明します。相談することをお勧めしますか? –
よく私はcplusplus.comから勉強しており、この例があります。 – infinitloop
"*私はcplusplus.comから勉強しています*"これはあなたの最初の間違いです。このサイトは参考にはならず、特に**良い学習リソースではありません。 – ildjarn