Logo bg.boatexistence.com

Какво е rvalue и lvalue в C++?

Съдържание:

Какво е rvalue и lvalue в C++?
Какво е rvalue и lvalue в C++?

Видео: Какво е rvalue и lvalue в C++?

Видео: Какво е rvalue и lvalue в C++?
Видео: Что не так с 2,5-литровым двигателем Nissan QR25DE? 2024, Април
Anonim

TL;DR: “lvalue” означава или “израз, който може да бъде поставен от лявата страна на оператора за присвояване”, или означава “израз, който има адрес на паметта”. “ rvalue” се дефинира като “всички други изрази”.

Какво е lvalue и rvalue в C с пример?

Например, присвояването очаква lvalue като ляв операнд, така че следното е валидно: int i=10; Но това не е: int i; 10=i; Това е така, защото имам адрес в паметта и е lvalue. Докато 10 няма разпознаваемо място в паметта и следователно е rvalue.

Каква е разликата между rvalue и lvalue?

Lvalue се отнася до обект, който съществува извън един израз. Стойността r е временна стойност, която не съществува извън израза, който я използва.

Какво е rvalue на език C?

L-стойност: "l-стойност" се отнася до място в паметта, което идентифицира обект. l-стойността може да се появи като лява или дясна страна на оператор за присвояване (=). l-стойността често се представя като идентификатор.

Какви са препратките за rvalue?

Rvalue препратките са малко техническо разширение към езика C++ Референциите на Rvalue позволяват на програмистите да избягват логически ненужно копиране и да предоставят перфектни функции за препращане. Те са предназначени основно да помогнат при проектирането на по-висока производителност и по-стабилни библиотеки.