-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
미해결
for (const auto &number : fibonacci), &유무의 차이점?
23.01.28 02:19 작성 조회수 339
0
int main()
{
int fibonacci[] = { 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89 };
for (auto& number : fibonacci)
number *= 10;
//for (const auto number : fibonacci)
for (const auto &number : fibonacci)
cout << number << " "; // -------1)
cout << endl;
return 0;
}
1) 라인에서 number 값을 변경없이 출력만 하고 있습니다.
이 경우 for문에서 number와 &number의 차이가 있을까요? 두 경우 모두 fibonacci 배열의 값을 변경하지 않으면 그냥 number를 쓰는 것이 나을까요?
답변을 작성해보세요.
1
forhin
질문자2023.01.28
제가 올린 질문이지만, 구글 검색을 하다보니 for each문 강의에서 놓친 것 같습니다.
&가 없으면, fibonacci배열의 값이 for문 안의 number변수로 일일이 복사가 되어 느리다고 하는데, 이렇게 이해하면 괜찮을까요?
Ambition
2023.02.02
for-each문도 함수의 종류이기 때문에 파라미터를 참조자를 써서 입력하지 않으면 호출할 때 값이 하나씩 복사가 되서 느리다고 저도 교수님께 들었습니다.
그리고 교수님께서 웬만해서는 파라미터에 입력값을 넣을 때 const data_type&을 넣어주라고 하셨던것도 같아요!!
↓↓↓ 아래에서 참조한 글입니다.
답변 1