• CSE207 객체지향 강좌 및 C++ 관련, 누구나 묻고 답하는 게시판 입니다.
  • CSE207 수강생이 아니여도 편안하게 질문하세요.
  • 첨부화일은 이미지 화일 혹은 zip 화일로 업로드 하기를 권합니다.

제목lab 8 응용 4번2020-10-04 02:59
작성자

lab 8 중 응용 4번에서 

[vector 를 넘겨받아 최고 점수를 찾아 반환하는 topGrade 함수의 반환형은 int* 형임]

이라고 되어있어 함수는 주소값을 반환하도록 했는데,


여기서 지역 변수를 반환하다 보니까 아래와 같은 경고가 뜨는 상황이 발생하게되었습니다(실행은 됩니)

[warning C4172: 지역 변수 또는 임시 변수의 주소를 반환하고 있습니다.] 


그래서 지역변수를 사용하지 않고, 최대값에 해당하는 벡터 요소의 주소값을 반환하고자 하였으나

int* topGrade(const vector<int>& grade) { 

부분에서 const가 있을땐 오류가 발생하지만 const가 없으면 아무 이상없이 vector 요소의 주소값을 반환하고있습니다


그래서 질문은

1. 첫번째 경우에서 경고는 무시해도 되는건가요?

2. const를 빼고 제출하면 안되는 건가요?(문제에 조건은 없지만 /*구현*/ 부분이 아니기에)

3. 위 두가지 경우가 모두 틀렸다면 topGrade함수는 어떤걸 반환해야하는건가요?


댓글
이전lab8번 기초3번 오류2020-10-05
다음랩 8 질문2020-09-29