:'유효한'std :: function이란 무엇입니까? 여기
http://en.cppreference.com/w/cpp/utility/functional/function
operator bool
설명된다 : "저장된 객체 호출이 유효 여부를 체크한다."
아마도 기본 구성 인 std::function
은 유효하지 않지만 이것이 유일한 경우입니까?
또한 유효한 지 여부를 어떻게 확인합니까?
operator()
은 std::bad_function_call
이 유효하지 않은 경우 일 수 있습니까? *이, 그렇지 않은 경우는 false 목표를 가지고있는 경우는 true :
OK, 유효성 검사는 형식 검사 일 뿐이며'std :: function'을 기본 호출로 호출하는 것은 정확히'std :: bad_function_call'이 발생한 경우입니다. – dpj
@ user710408 : "유효성 검사는 유형 검사"라는 것이 무슨 뜻인지 알지 못합니다. 실행 시간에 유효성 (이제는 "has a target"을 가정)이 결정되면 컴파일시에 유형 확인이 수행됩니다. 그리고 잘못된 함수 호출은 함수가 유효하지 않거나 (타겟이 없음), 기본 구성에서부터 또는 명시 적으로'nullptr '로 지정되어서 발생합니다. – GManNickG
나는 내가 어느 의미인지를 알지 못했다고 생각한다! 감사합니다 :) – dpj