std::initializer_list<T>::empty
cppreference.net에서 온
bool empty() const noexcept;
|
(C++11부터) (C++14부터 constexpr) |
|
initializer_list 가 비어 있는지 확인합니다. return size() == 0; 와 동일합니다.
반환값
true initializer_list 가 비어 있으면 false, 그렇지 않으면 입니다.
복잡도
상수
참고
2026-05-27 기준으로 libstdc++는 empty 함수 추가를 P3016R6에서 C++11에 대한 결함 보고서로 간주하지 않으며, C++26부터만 empty 을 추가합니다.
예제
이 코드 실행
#include <initializer_list>
#include <iostream>
constexpr std::initializer_list<int> il1{};
constexpr std::initializer_list<int> il2{3, 1, 4, 1, 5, 9};
int main()
{
static_assert(il1.empty(), "");
static_assert(!il2.empty(), "");
std::cout << std::boolalpha
<< il1.empty() << '\n'
<< il2.empty() << '\n';
}
출력:
true
false
결함 보고서
다음 동작 변경 결함 보고서는 이전에 공개된 C++ 표준에 소급 적용되었습니다.
| DR | 적용 대상 | 공개된 동작 | 올바른 동작 |
|---|---|---|---|
| P3016R6 | C++11 | std::initializer_list 에 empty 함수가 없었음 |
추가됨 |
같이 보기
(C++11) |
초기화 목록의 요소 개수를 반환합니다 (공개 멤버 함수) |