지나공 : 지식을 나누는 공간

프로그래머스 candidate function not viable 해결 본문

우당탕탕 삽질기

프로그래머스 candidate function not viable 해결

해리리_ 2021. 1. 28. 13:47

 

오픈채팅방 문제를 풀다가 다음과 같은 에러가 발생했다. 

 

 

/solution0.cpp:26:20: error: no matching function for call to 'split'
name = split(record[i], idx+1);
^~~~~
/solution0.cpp:6:8: note: candidate function not viable: expects an l-value for 2nd argument
string split(string & s, int& idx){
^
1 error generated.

 

 

split 함수의 두 번째 인자가 잘못되어서 함수가 성립할 수 없단다.

 

 

call by reference 로 참조값을 받는 인자로 int & idx = 들어온 값(idx) 이다. 즉 들어온 값을 가리키는 참조값을 인자로 받겠다는 의미. 그래서 들어온 값의 참조를 받으려는데 idx+1이라는.. 참조를 알 수 없는 애가 들어와버려서 발생한 에러. 해결은 아래와 같이 하면 된다.

 

 

728x90
Comments