Language/C++
객체초기화 ' = ' , ' ( ) ' 의 차이점
피퍄퓨퍄
2019. 3. 3. 15:40
객체 초기화시 ( '=' ) 와 ( '( )' )의 차이점
' = ' 사용
기본 생성자 호출 후에 초기화
기본 생성자를 호출 하고 복사대입연산자 ' = ' 를 호출한다.
' ( ) ' 사용
기본생성자의 인자로 초기화값을 사용
복사생성자를 한번만 호출, 효율적이다.
P.S)
Test T = new Test;
Test T2 = new Test( );
Test의 생성자가 default 생성자일 경우 위 2줄의 차이점
T의 경우 객체가 초기화 되지 않음
T2의 경우 POD이기 때문에 0으로 초기화가 됨