아무에게도 다음 코드에서 어떤 일이 일어나는지 말해 줄 수 있습니까? lvalue 오류를 기대하고 있었고 함수의 참조 반환 유형을 제거하면 발생합니다. 하지만 20 점을 내게주는거야. 설명해 줘. 감사.C++ 참조 및 lvalue
int &fun()
{
static int x = 10;
return x;
}
int main()
{
fun() = 20;
cout << fun();
return 0;
}
어느 부분을 이해하지 못합니까? – juanchopanza
'x'가 정적이라는 사실을 잊지 마십시오. – 101010
아마도'x' static을 사용하여 static이 아닌 지역 변수에 대한 참조를 반환하는 것에 대한 경고를 컴파일러에서 제거 할 수 있습니다. – Jeff