Aktywne Wpisy

picasssss1 +635
źródło: IMG_20250625_073356
Pobierz
WielkiNos +77
źródło: temp_file5688327278303881741
PobierzSkopiuj link
Skopiuj link
źródło: IMG_20250625_073356
Pobierz
źródło: temp_file5688327278303881741
PobierzWykop.pl
#programowanie #cpp #cplusplus
np.
int x = 4; jest ok
a
4 = x;
już nie bardzo
Mhm, a to rozwinięcie do xvalue itp to potem zalezy od przypsiania? Np
x = GetSomeValue()
To cos innego niż
x = 4?
Właśnie wiem że w 11 już nie ma r i l tylko weszło więcej z tego co widziałem i to tam wydaje mi się takie pogmatwane mocno, to co czytałem nie rzuca mi za bardzo światła na sprawę. Przejrzałem ten wątek i się zakręciłem
https://stackoverflow.com/questions/3601602/what-are-rvalues-lvalues-xvalues-glvalues-and-prvalues
glvalue to ogólnie coś co ma adres
rvalute to ogólnie coś co można przesuwać(dzięki move semantics, mam nadzieję, że wiesz o co chodzi)
lvalue to coś co ma adres ale nie można tego przesuwać
xvalue to taki mix czyli ma adres i można przesuwać
prvalue nie ma adresu ale można przesuwać
O move semantics słyszałem na prelekcji i trochę czytałem. Chyba dobrze to zobrazował Stroustrup pokazując że jak chce mieć długopis w drugiej ręce nie musi go kopiować, tylko przenieść z ręki do ręki ("nawet dzieci to potrafią").
O taki krótki opis mi właśnie chodziło. Dzięki!
W sumie wstyd, bo trochę w cpp dłubię, a mam spore braki w takich podstawach.
Rust jest chyba dość nowym językiem.