>백엔드 개발 >C++ >std::array를 기본 초기화할 수 있나요?

std::array를 기본 초기화할 수 있나요?

DDD
DDD원래의
2024-10-31 03:29:02716검색

Can std::array be Default-Initialized?

std::array를 기본 초기화할 수 있나요?

변수를 std::array x;의 모든 요소가 기본적으로 초기화되도록 보장할 수 있습니다. C 11 언어 표준(§8.5/11)에 따르면 명시적인 초기화가 없는 모든 개체는 기본적으로 초기화됩니다.

그러나 기본 초기화는 클래스가 아닌 개체에는 영향을 미치지 않는다는 점에 유의해야 합니다. 배열 유형(§8.5/6), 값이 불확실한 상태로 유지됩니다. 예를 들어, 이러한 유형의 기본 초기화 배열은 불확실한 값을 갖게 됩니다.

배열의 값 초기화

모든 배열 요소를 특정 항목으로 초기화하려는 경우 값 T{}, 이는 기본 초기화가 아니라 값 초기화(8.5/7)입니다. 빈 초기화 프로그램을 사용하면 C 11에서 쉽게 배열 값을 초기화할 수 있습니다.

<code class="cpp">int plain_int{};
int c_style_array[13]{};
std::array<int, 13> cxx_style_array{};</code>

이렇게 하면 모든 배열 요소가 값 초기화되어 정수의 경우 일관된 값 0이 되고 해당 데이터의 기본값이 유지됩니다. 유형입니다.

위 내용은 std::array를 기본 초기화할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.