Co to jest rvalue i lvalue w c++?

Spisu treści:

Co to jest rvalue i lvalue w c++?
Co to jest rvalue i lvalue w c++?

Wideo: Co to jest rvalue i lvalue w c++?

Wideo: Co to jest rvalue i lvalue w c++?
Wideo: Keynote: The Evolution of C++ - A Typescript for C++ - Herb Sutter - CppNow 2023 2024, Listopad
Anonim

TL;DR: „lvalue” oznacza albo „wyrażenie, które można umieścić po lewej stronie operatora przypisania”, albo „wyrażenie, które ma adres pamięci”. „ rvalue” jest zdefiniowany jako „wszystkie inne wyrażenia”.

Co to jest lwartość i rwartość w C na przykładzie?

Na przykład, przypisanie oczekuje l-wartości jako lewego operandu, więc następujące jest prawidłowe: int i=10; Ale to nie jest: int i; 10=ja; Dzieje się tak, ponieważ i ma adres w pamięci i jest lwartością. Podczas gdy 10 nie ma możliwej do zidentyfikowania lokalizacji w pamięci, a zatem jest wartością r.

Jaka jest różnica między rvalue a lvalue?

Lwartość odnosi się do obiektu, który istnieje poza pojedynczym wyrażeniem. Wartość r to wartość tymczasowa, która nie jest zachowywana poza wyrażeniem, które jej używa.

Co to jest rvalue w języku C?

Wartość L: „Wartość l” odnosi się do lokalizacji w pamięci, która identyfikuje obiekt. l-wartość może występować jako lewa lub prawa strona operatora przypisania (=). l-wartość często reprezentuje jako identyfikator.

Co to są referencje rvalue?

Odwołania do Rwartości to małe techniczne rozszerzenie języka C++ Odwołania do Rwartości pozwalają programistom uniknąć logicznie niepotrzebnego kopiowania i zapewniają doskonałe funkcje przekazywania. Mają one przede wszystkim pomóc w projektowaniu wyższej wydajności i bardziej niezawodnych bibliotek.