Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Learn References | References & Pointers
C++ Intermediate | Mobile-Friendly

bookReferences

The reference is the variable that stores the address of certain data. References have many familiar features with pointers. Here I will show how references work and the difference between them and pointers. Let’s start by creating. To declare the reference use the ampersand &:

int a = 3;

int *pa = &a;

int &ra = a;

The reference also has its name and type, but it doesn’t need to get the address of the variable using the additional operator &. Nevertheless, in both cases, we assign the address of the variable a to another variable (pointer or reference):

If we want to print created pointer and reference, we will get the following:

12
cout << pa << endl; cout << ra << endl;
copy

By outputting the reference, we got the value it stores since references immediately work with the value they point to. You cannot just add the asterisk * to the reference (like with pointers) to get the address, as such syntax will cause an error.

Pay attention that you cannot declare the reference without the variable it will point to.

int a = 3;

int *pa = &a;

int &ra = a;
question-icon

Declare the reference rx:

string ;

Click or drag`n`drop items and fill in the blanks

Everything was clear?

How can we improve it?

Thanks for your feedback!

SectionΒ 2. ChapterΒ 6

Ask AI

expand

Ask AI

ChatGPT

Ask anything or try one of the suggested questions to begin our chat

Suggested prompts:

Ask me questions about this topic

Summarize this chapter

Show real-world examples

Awesome!

Completion rate improved to 2.94

bookReferences

Swipe to show menu

The reference is the variable that stores the address of certain data. References have many familiar features with pointers. Here I will show how references work and the difference between them and pointers. Let’s start by creating. To declare the reference use the ampersand &:

int a = 3;

int *pa = &a;

int &ra = a;

The reference also has its name and type, but it doesn’t need to get the address of the variable using the additional operator &. Nevertheless, in both cases, we assign the address of the variable a to another variable (pointer or reference):

If we want to print created pointer and reference, we will get the following:

12
cout << pa << endl; cout << ra << endl;
copy

By outputting the reference, we got the value it stores since references immediately work with the value they point to. You cannot just add the asterisk * to the reference (like with pointers) to get the address, as such syntax will cause an error.

Pay attention that you cannot declare the reference without the variable it will point to.

int a = 3;

int *pa = &a;

int &ra = a;
question-icon

Declare the reference rx:

string ;

Click or drag`n`drop items and fill in the blanks

Everything was clear?

How can we improve it?

Thanks for your feedback!

SectionΒ 2. ChapterΒ 6
some-alt