- 순서
- RVO란?
- RVO의 작동방식
- RVO의 이점
- NRVO
- RVO란?
- C++같은 프로그래밍 언어에서 함수가 객체를 반환할 때 발생하는 불필요한 복사 생성자 또는 이동 생성자 호출 작업을 제거하는 컴파일러 최적화 기법임.
- 리턴할 객체를 호출자의 메모리 공간에 직접 생성해버리는 방식.
- RVO의 작동방식
- 임시 객체 생성 및 복사/이동 생략
- 컴파일러 최적화
- RVO의 이점
- 성능 향상: 객체 복사 및 이동은 비용이 많이 드는 작업일 수 있는데, RVO는 이러한 작업을 생략하여 프로그램 실행 속도를 높임
- 코드의 투명성: 개발자는 RVO를 직접 구현할 필요 없이 컴파일러에게 맡길 수 있어, 효율적인 코드를 작성하는데 집중할 수 있
- NRVO
- Named Return Value Optimization으로 함수 내에서 이름을 가진 지역 객체를 반환할 때도 동일한 최적화가 적용되는 것
'CS' 카테고리의 다른 글
| [CS] TCP/UDP (0) | 2025.09.03 |
|---|---|
| [CS]뮤텍스와 세마포어 (3) | 2025.08.28 |
| [CS]리틀 엔디안과 빅 엔디안 (1) | 2025.08.28 |
| [CS]스택 오버 플로우 (2) | 2025.08.28 |
| [CS]busy-waiting (3) | 2025.08.28 |