Value Category(值類別)- 1 / 2

這筆記從 C 原本對 lvalue 與 rvalue 的使用與,再到 C++ 11 標準時使用的 lvalue 與 rvalue 。我覺得 Value Category 是入門 Modern C++ 需要釐清的重要觀念。了解值類別也可以幫助了解編譯器與物件生命週期中的細節,在寫扣上也會有些幫助。

首先要記得的是 lvalue 和 rvalue 這種東西不是一種 C++ 語言中的 feature ,它們是 expression ,表達出特定的 semantic (語意),這樣的語意除了 C/C++ 之外也可以套用在其他程式語言上。

為了方便閱讀,分成兩個部分。
第一部分:Back in C & Temporary Materialization Conversion
第二部分:Modern C++ Value Category

Continue reading “Value Category(值類別)- 1 / 2”