인프런 커뮤니티 질문&답변

우이리다님의 프로필 이미지
우이리다

작성한 질문수

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

2-I

2-I 참조 에러

작성

·

142

·

수정됨

0

안녕하세요 항상 강의 잘 보고있습니다.!

궁금한 점이 있는데, go() 함수 부분에서

while(true){

if(ret.size() && ret.front() == '0')

}

참조 에러에 안걸리게 ret.size()를 꼭 적어야 한다고 말씀하셨는데, 제가 생각할땐 ret.front() == '0' 자체가 size가 1 이상이라는 것도 포함되니까 ret.size()를 적어야하는 이유를 잘 모르겠습니다.

답변 1

0

큰돌님의 프로필 이미지
큰돌
지식공유자

안녕하세요 우일님 ㅎㅎ

그렇게 생각하실 수도 있는데요.

만약 ret에 아무것도 없을 때 front를 참조하게 되면 참조에러가 뜨게 됩니다

 

ret.front() == '0' 자체가 size가 1 이상이라는 것도 포함

>> 해당 부분을 참조해서 >> 참조값이 0임을 확인하는 로직이라 size가 1이상임을 보장하지 않습니다.

 

또 질문 있으시면 질문 부탁드립니다.

좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다.

감사합니다.

우이리다님의 프로필 이미지
우이리다

작성한 질문수

질문하기