enable-if

    0

    1답변

    std :: enable과 같은 일종의 std :: enable_if_and_else를 만들 수는 있지만 정의되지 않은 클래스에 대해서는 컴파일 타임 오류가 없습니다. 여기 은 예입니다

    0

    1답변

    템플릿 클래스를 만들려고합니다. 하나 이상의 유형으로 인스턴스화되는지 여부에 따라 다른 서명으로 콜백을 구현합니다. struct NoIntermediate { }; template<typename R, typename I> struct ParserCallbackSwitch { using type = std::function<bool(co

    3

    1답변

    다른 보기 유형이 있으며, 각각 std::size_t View::dimension 구성원 상수와 typename View::value_type 구성원 유형이 있습니다. From 및 To 모두 (is_view<>하여 확인)들이다 및 From의 내용 To에 할당 될 수 있는지 다음 컴파일 형 체크 확인한다. (동일한 차원 및 변환 가능 값 유형). templa

    4

    1답변

    나는 enable_if를 사용하는 법을 배워야합니다. 이를 위해 나는 enable_if를 사용하여 distance 함수를 다시 구현해야합니다. 나는 type_traits을 확인하지만 뭔가 특정 반복자 경우 확인을 위해 아무것도 찾을 수 없습니다 #include <iostream> #include <vector> #include <list> #inclu

    5

    2답변

    std::enable_if을 C++ 11에서보다 잘 이해하려고하고 최소 예제를 작성하려고했습니다. 클래스가 A이고 멤버 함수가 void foo()이고 다른 클래스 템플릿의 유형 T을 기반으로 구현합니다. 아래 코드는 원하는 결과를 제공하지만 아직 완전히 이해하지 못했습니다. V2 버전이 작동하지만 V1이 아닌 이유는 무엇입니까? "중복"유형 인 U이 필요한

    0

    1답변

    다른 유형이 T 인 저장 유형을 지정하는 템플릿을 정의하려고합니다. 모든 산술 유형을 catch하기 위해 enable_if를 사용하고 싶습니다. 다음은 템플릿이 2 개의 매개 변수로 다시 선언되는 것에 대한 나의 시도입니다. 기본 템플릿에 두 번째 더미 매개 변수를 추가했지만 다른 오류가 발생했습니다. 어떻게 할 수 있습니까? #include <string

    1

    3답변

    구성원 방법을 전문화하려고 시도합니다. 이 이전 질문 읽기 : std::enable_if to conditionally compile a member function 나는 내가 뭘 잘못하고 있는지 잘 이해하고 있습니다. #include <string> #include <iostream> #include <type_traits> template<typ

    0

    1답변

    두 템플릿으로 제공되는 템플릿 클래스 Foo이 있습니다. 템플릿 템플릿 매개 변수는 두 가지가 있습니다. 클래스에 멤버 변수를 저장하고 getter 및 setter를 제공하기 위해 클래스에 몇 가지 추가 기능이 필요합니다. 또한 추가 유형에 대해 추가 static_assert()을 수행해야하며 일반 생성자를 비활성화하고 해당 유형의 매개 변수도 제공해야합니

    0

    1답변

    위한 클래스 멤버 funrtion을 해제,하지만 상황은 실제로 매우 간단합니다 std::enable_if 의 구문 어려움을합니다. 템플릿 파라미터 T의 한 특정 유형에 대해 구현되지 않는다 T 2 기능 템플릿 클래스. T 한 함수가 int를 받아 다른 함수가 int를 반환의 두 함수는 매개 변수 또는 반환 값이 없습니다. 간단한 예가 무엇입니까? std::

    0

    1답변

    큰 코드베이스를 clang (g ++ 및 intel C++로 빌드)에 이식합니다. 다음 스 니펫과 유사한 코드가 컴파일되어 g++ 4.8 - 6.2에서 작동하지만 clang 3.8 and 3.9으로 컴파일되지 않습니다. MinOp해야한다 (AFAICT)의 두 번째 호출 ("! 나 한테 전화하지 마세요") 기본 클래스의 전문화를 얻을 수 있지만, 그 소리는