※ 이니셜라이저를 이용하면 선언과 동시에 초기화가 이뤄지는 형태로 바이너리 코드가 생성된다.


즉, 34~35행은 AAA mem = ref; 로 해석이 된다.

그러므로 복사 생성자만 호출이 된다.


하지만 45~48행은 생성자와 대입연산자 이 두개가 호출이 된다. 

즉, AAA mem;

     mem = ref; 이렇게 해석이되므로 인해.. 생성자 호출이 되어지고 그다음 대입연산자가 호출이 된다. 


※ 생성자의 몸체부분에서 대입연산을 통한 초기화를 진행하면, 선언과 초기화를 각각 별도의 문장에서 진행하는 형태로 바이너리 코드가 생성된다.



위의 예제에서 보이듯이 이니셜라이저를 이용해서 초기화를 진행하면, 함수의 호출횟수를 줄일 수 있어서, 그리고 초기화의 과정을 단순화시킬 수 있어서 약간의 성능향상을 기대할 수 있다.


Posted by scii
: