-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
미해결
10:10 경에
20.05.19 17:56 작성 조회수 184
1
안녕하세요
강의 잘 듣고 있습니다.
10:10 경에 foo함수에 아규먼트로 리터럴이 들어올 수 있게 하려면,파라미터에 const를 붙여 주면 되고,
단 x의 값이 변경되지 않을 경우에만 그렇게 할 수 있다고 하셨는데요.
제가 foo함수 내부에서 x에 1을 더해주는 식을 추가했는데 컴파일 에러가 나지도 않고 잘 실행되는데 그 이유는 뭐죠?
void foo(const int& x)
{
cout << x + 1<< endl;
}
답변을 작성해보세요.
3
Hello Yeo
2020.05.19
만드신 코드는 x에 1을 직접 더하는 방식이 아닙니다
x의 값을 가져오고, 거기에 1을 더한 값을 출력하는겁니다.
void foo(const int &x)
{
cout << ++x << endl;
}
와 같이 작성하시면 에러가 발생합니다.
작성하신 코드 아래에
cout << x << endl; 을 추가해보시는것도 확인하는 방법이 될 수 있겠네요
답변 1