Vlákno názorů k článku Ukazatele v Rustu aneb temná strana Síly 2 od pointer/reference - Chápu to správně tak, že pointer a reference...

  • Článek je starý, nové názory již nelze přidávat.
  • 25. 5. 2017 21:29

    pointer/reference (neregistrovaný)

    Chápu to správně tak, že pointer a reference je interně to samé - jen adresa, nic víc (žádné tagy...) a liší se od sebe pouze tím, jak s nimi řeší překladač ownership model? Tj. u pointerů na to úplně kašle, kdežto u referencí rekurzivně kontroluje předávání, viditelnost a tak dál?

  • 26. 5. 2017 3:47

    klokan

    Záleží na typu. U polí je pointer totéž, co v C, kdežto reference obsahuje navíc informaci o délce. Například reference:


    slice: &[isize]

    má jako C ekvivalent:


    struct {
    int *ptr;
    unsigned len;
    } slice;

    Podobně reference na traitové objekty obsahují pointery dva: jeden na daný objekt a druhý na konkrétní trait (ekvivalent vtable v C++)-