value

    [Carbon] Value categories and value phases

    [Carbon] Value categories and value phases

    모든 값에는 값 범주가 있다. 이 범주는 C++과 유사하며 흔히 알고 있듯 l-value(좌측값) 또는 r-value(우측값) 라고 부른다. (여기서 l-value, r-value가 무엇인지는 자세히 설명하지 않는다.) Carbon은 자동으로 l-value을 r-value으로 변환하지만 다른 방향으로는 변환하지 않습니다. 즉 r-value를 l-value로는 변환하지 않는다는 의미이다. l-value에는 메모리 저장을 위한 공간과 해당 공간의 주소가 존재하며 유형이 const(상수형)이 아니라면 l-value의 값은 수정될 수 있다. r-value는 r-value만을 위한 전용 저장 공간이 없을 수 있다. 즉, 수정이 불가능하며 일반적으로 해당 데이터의 주소를 가져올 수 없다. r-value는 value..