다음 두 두 초기화 간의 차이점은 무엇입니까? 두 번째 경우에 물체가 보장하면서 오브젝트가 초기화되지 않은 남아있는 제 경우괄호 사용 여부에 관계없이 C++ 클래스 초기화
class Pod {
public:
int a, b;
};
Pod *p1 = new Pod;
Pod *p2 = new Pod();
다음 두 두 초기화 간의 차이점은 무엇입니까? 두 번째 경우에 물체가 보장하면서 오브젝트가 초기화되지 않은 남아있는 제 경우괄호 사용 여부에 관계없이 C++ 클래스 초기화
class Pod {
public:
int a, b;
};
Pod *p1 = new Pod;
Pod *p2 = new Pod();
값으로 초기화가 0으로 초기화 수단 유형이 경우 POD이다을
참조 차이점은 기본적으로'int'의 경우에는 존재하지 않습니다. 첫 번째 경우 멤버는 초기화되지 않고 초기화됩니다. –
@JerryCoffin : 그래, 나는 그 부분이 POD라는 사실에도 기인한다. * default-initialization *은 객체가 초기화되지 않았 음을 의미한다 * –
@ DavidRodríguez-dribeas : ... 그러나 C++ 11에서는 POD 유형 (IIRC, 모든 복사 가능 유형 중 다소 넓은 범주에 적용해야 함)에만 국한되지 않습니다. –
JamesMcLaughlin이 말했듯이 차이는 없으며, POD에만 국한되지 않습니다. – MFH
@ DavidRodríguez-dribeas 어떻게 그렇게됩니까? –
@JamesMcLaughlin : 표준 8.5 절을 읽으십시오. :) –