以下に示す例でわかるように、参照渡しとアドレス渡しの両方を使用しています...
#include<iostream>
#include<string>
void passByAddress(int *a);
void passByReference(int &a);
int main() {
int betty = 21;
int setty = 45;
passByAddress(&betty);
passByReference(setty);
std::cout << "Betty : " << betty << std::endl;
std::cout << "Setty : " << setty << std::endl;
}
//Pass By Adress
void passByAdrress(int *a) {
*a = *a + 5;
//Memory Adress of a.
//So gives hexa decimal.
std::cout << "Address : " << a << std::endl;
//Actual Value of adress
std::cout << "Address's Value : " << *a << std::endl;
}
//Pass By Reference
void passByReference(int &a) {
a = a + 5;
//Memory Address of a.
//So gives hexa decimal.
std::cout << "Adrress : " << &a << std::endl;
//Actual Value of address
std::cout << "Address's Value " << a << std::endl;
}
したがって、ここでは、passbyaddressとpassbyreferenceの使用の違いを本当に理解していません..これらの両方と値による受け渡しの違いは理解していますが(値による受け渡しはメモリアドレスではなく変数のコピーを渡すため)、わかりませんこの両者の違いは何ですか。多くの人は、「参照渡しを使用する方がはるかに優れている」または「アドレス渡しを使用する必要がある場合を除いて、常に参照渡しを使用する」と言っています..しかし、どちらを使用するかを決定できるように、実際の違いを知りたい後のプロジェクトで使用します。
ありがとうございました。