Sdílet prostřednictvím


Odkaz Lvalue Declarator: &

Adresu objektu, ale syntakticky chová jako objekt.

type-id & cast-expression

Poznámky

Lvalue odkazu můžete představit jako jiný název objektu.Deklarace lvalue odkaz obsahuje volitelný seznam identifikátorů následované declarator odkaz.Odkaz musí být inicializována a nelze je změnit.

Libovolného objektu, jehož adresa lze převést na daný ukazatel typu lze také převést na typ odkazu podobné.Například libovolný objekt, jehož adresu lze převést na typ char * lze také převést na typ char &.

Nezaměňujte odkaz prohlášení s použitím operátor adresu z.Když & identifikátor předchází typu, jako například int nebo char, identifikátor je deklarována jako odkaz na typ.Při & identifikátor není před podle typu, je použití adres z hospodářského subjektu.

Příklad

Následující příklad ukazuje declarator odkaz prohlášením Person objektu a odkaz na objekt.Protože rFriend je odkaz na myFriend, buď proměnné aktualizace změní na stejný objekt.

// reference_declarator.cpp
// compile with: /EHsc
// Demonstrates the reference declarator.
#include <iostream>
using namespace std;

struct Person
{
    char* Name;
    short Age;
};

int main()
{
   // Declare a Person object.
   Person myFriend;

   // Declare a reference to the Person object.
   Person& rFriend = myFriend;

   // Set the fields of the Person object.
   // Updating either variable changes the same object.
   myFriend.Name = "Bill";
   rFriend.Age = 40;

   // Print the fields of the Person object to the console.
   cout << rFriend.Name << " is " << myFriend.Age << endl;
}
  

Viz také

Referenční dokumentace

Odkazy (C++)

Argumenty funkce typ odkazu

Funkce vrátí typ odkazu

Odkazy na ukazatele