Portál AbcLinuxu, 11. května 2025 04:06

Dotaz: Z pointeru reference v C++

13.1.2009 20:42 Georgius | skóre: 24 | blog: jirka
Z pointeru reference v C++
Přečteno: 715×
Odpovědět | Admin

Prosím o odpověď na začátečnický dotaz. Už se s tím mořím docela dlouho a nemůžu na to přijít. Mějme ukázkový kód:

#include <iostream>
int *glob;
int &pokus(){ }  

int main(){
    glob=new int;
  *glob=1;   
std::cout<<*glob<
}

Potřeboval bych napsat kód funkce pokus() tak aby vracela referenci na glob; V programu, co píšu, je to samozřejmě komplikovanější a zabalené do třídy, ale překladač na mne furt řve, že se nedá přetypovat *int na &int. Moje chápání bylo, že &int v podstatě je konstantní verze *intu, ne ?

s díky za odpovědi Georgius

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

13.1.2009 21:25 Georgius | skóre: 24 | blog: jirka
Rozbalit Rozbalit vše Re: Z pointeru reference v C++
Odpovědět | | Sbalit | Link | Blokovat | Admin

Jsem blbej, prosím o smazání dotazu. Odpověď samožřejmě JE taková jakou jsem psal ale z nějakého důvodu to nechodilo.

 

int &pokus(){return *glob;}

13.1.2009 21:27 John
Rozbalit Rozbalit vše Re: Z pointeru reference v C++
Odpovědět | | Sbalit | Link | Blokovat | Admin
int *glob;

//vraci hodnotu na kterou ukazuje glob
int pokus() { return glob; }
//vraci referenci na hodnotu na kterou ukazuje glob (reference na int)
int &pokus() { return *glob; }  

//vraci konstantni referenci ...
const int &pokus() { return *glob; }
//vraci [konstantni] referenci na glob (reference na pointer na int) (vazne chcete toto?)
[const] int* &pokus() { return glob; }

//vraci hodnotu glob (pointer na int)
int *pokus() { return glob; }

 

14.1.2009 16:59 noname
Rozbalit Rozbalit vše Re: Z pointeru reference v C++

Ty uz to nehul ani redeny :-DDD

14.1.2009 17:13 John
Rozbalit Rozbalit vše Re: Z pointeru reference v C++

Proc? Mne se ty stavy libi... :-P

14.1.2009 18:49 depka | skóre: 20 | blog: eterity
Rozbalit Rozbalit vše Re: Z pointeru reference v C++

minimalne dve jsou hovadiny

14.1.2009 20:47 John
Rozbalit Rozbalit vše Re: Z pointeru reference v C++

Ted jsem si vsimnul. V tom prvnim se nekam ztratila hvezdicka :-/

Ale te druhe hovadiny si porad nejak nejsem vedom.

15.1.2009 17:53 depka | skóre: 20 | blog: eterity
Rozbalit Rozbalit vše Re: Z pointeru reference v C++

pardon, myslel jsem ze nejdou delat reference na ukazatele, ale je to presne naopak, tedy nejdou delat ukazatele na reference

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.