(ISO/IEC 14882은 : 2011 (E)는)는 할당 연산자의 정의는 다음과 같습니다할당 연산자의 정의에 결함이 있습니까? 는 C++ 11 표준의 내 사본에서
간단한 과제 (
=
)에서, 식의 값은 대체 왼쪽 피연산자가 참조하는 개체의
"표현식의 값"대신 "오른쪽 피연산자의 값"을 사용해야하지 않습니까? 현재로서는 모호한 것처럼 보이고 "할당 표현의 가치"를 의미하는 것으로 쉽게 해석 될 수 있습니다. 왼쪽 피연산자 클래스 타입이 아닌 경우식이 암시 적으로 (제 4 항)로 변환되고,
:
어구는 "식"의 [expr.ass]의 또 다른 단락에 애매하게 사용 왼쪽 피연산자의 cv- 규정되지 않은 유형
"여기 오른쪽 피연산자"를 의미하는 것으로 생각합니까?
이것은 할당 연산자의 효과에 대한 유일한 정의이기도합니다. 내가 놓친 게 있니?
할당 표현식 *의 값은 오른쪽의 값입니다. –
§5.17/2 -이 문맥에서 "표현식"의 의미는 누락되었습니다. §5.17/1. – ildjarn
@KerrekSB 할당 식의 값이 "왼쪽 피연산자를 나타내는 왼쪽 값"으로 정의되므로 순환 논리가됩니다. –