반응형
생성자에서 멤버를 초기화 할 때, 둘 중 어느 방법이 성능 향상에 도움을 줄까?
1. 이니셜라이저로 초기화
Boy(int _age) : age(_age) {
}
2. 생성자 몸체에서 = (대입연산자)로 초기화
Boy(int _age) {
age = _age;
}
결론부터 말하면 이니셜라이저로 초기화하는게 성능에 더 좋다.
이니셜라이저를 이용하면 선언과 동시에 초기화가 이루어지는 형태로 바이너리 코드가 생성된다.
반면, 생성자 몸체에서 대입연산(=)을 통해 초기화를 하면, 선언과 초기화가 따로따로 이루어지는 형태로 바이너리 코드가 생성된다.
반응형