Namespaces
Variants

std::initializer_list<T>::data

cppreference.net에서
 
 
유틸리티 라이브러리
일반 유틸리티
관계 연산자 (C++20에서 폐지됨)
정수 비교 함수
(C++20)(C++20)(C++20)    
(C++20)
교체 및 타입 연산
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
공통 어휘 타입
(C++11)
(C++17)
(C++17)
(C++17)
(C++11)
(C++17)
(C++23)



 
 
const T* data() const noexcept;
(C++11부터)
(C++14부터 constexpr)

initializer_list의 첫 번째 요소에 대한 포인터를 얻습니다. return begin();와 동일합니다.

초기화 목록이 비어 있으면 data() 및 end()의 반환 값은 불특정이지만 동일합니다.

반환 값

초기화 목록의 첫 번째 요소에 대한 포인터

복잡도

상수

참고 사항

2026-05-27 기준으로, libstdc++는 data 함수의 추가를 P3016R6에서 C++11에 대한 결함 보고서로 처리하지 않았으며, C++26부터만 data을 추가합니다.

예제

#include <initializer_list>

int main()
{
    static constexpr auto il = {42, 24};
    static_assert(il.data() == il.begin());
    static_assert(*il.data() == 0x2A);
    static_assert(il.data()[1] == 030);
}

결함 보고서

다음 동작 변경 결함 보고서는 이전에 발행된 C++ 표준에 소급하여 적용되었습니다.

DR 적용 대상 발행된 동작 올바른 동작
P3016R6 C++11 std::initializer_list에 data 함수가 없음 추가됨

참조 항목

(C++11)
첫 번째 요소에 대한 포인터 반환
(공개 멤버 함수)
(C++11)
마지막 요소 다음 위치에 대한 포인터 반환
(공개 멤버 함수)