#include <iostream>
using namespace std;
void display_ptr(int *ptrint) {
cout << *ptrint << endl;
}
void display_addr(int &toint) {
cout << toint << endl;
}
int main()
{
int i{ 10 };
display_ptr(&i);
display_addr(i);
}
在这个例子中,与通过引用传递值相比,用指针构造的可能性对我来说是不可理解的。
如您所见,要通过指针使用一个值,您需要使用 获取它*,并使用 将它传递给参数&。
使用按引用传递,除了在参数本身中指定外,不需要任何其他内容,同时也不会复制值,也可以通过引用更改它。
我不太明白利润指针有什么,如果通过引用传递一个值会方便得多。
如果英文好的话,欢迎来到英文版的stackoverflow。如果简而言之:
最主要的是引用总是被初始化。即没有空链接,坏链接就是UB。该语言认为它们是这样的,尽管它并没有真正做任何事情来保持它们的初始化。与往常一样,一半的工作落在程序员身上。所有其他引用属性都遵循初始化属性。