sfinae

    0

    3답변

    하는 방법을 사용하려면 .) 그러나 SFINAE (및 따라서 enable_if)에 대한 지원이 여전히 좋지 않은 Visual Studio를 사용하고 있습니다. (나는 그 간단한 예제에서 작동하는지 모르겠다; 내 실제 상황에서 클래스 참조에 대해 std::enable_if을 사용하고 있으며 해당 클래스의 멤버를 사용하면 작동하지 않는다.) this에 대한 대

    2

    1답변

    나는 is_callable 약간의 특성을 구현하여 mysel을 개선하려고합니다. 그러나 나는 약간의 문제를 달리고있다. 인수 (또는 람다)와 함께 functor를 사용하려고 할 때 문제가 발생합니다. #include <iostream> #include <type_traits> #include <cstdlib> template<typename T,

    0

    2답변

    누군가 아래의 코드에서 오류 C2259 : 'PropertyValue': Visual Studio 2015 C++에서 "추상 클래스를 인스턴스화 할 수 없습니다."라는 오류가 발생하는 이유를 설명 할 수 있습니까? 컴파일러는 조건부로 지정된 함수 ConvertToDevice()이 파생 클래스 PropertyValue에 동일한 서명이 있는지 식별 할 수 있습

    0

    1답변

    템플릿 호출 가능 인수를 사용하는 함수가 있는데이 함수에 인덱스를 전달합니다. 어떤 경우에는 인덱스를 정적으로 전달하고 싶습니다 (저는 튜플을 가지고 작업하고 있습니다). 필자는 템플리트 된 호출 연산자와 함께 호출 가능한 객체를 전달하고 SFINAE를 사용하여 이것이 가능해야한다고 생각했습니다.이 struct A { template< size_t

    1

    2답변

    템플릿 전용 함수를 만들려고하는데 컴파일 타임에 특수화 만 사용하도록 지정되었습니다. 나는 std::false_type에서 물려받은 것에 static_assert을 사용할 것을 제안하는 Force a compile time error in a template specialization을 참조했습니다. 내가 int 또는 unsigned int에 전달하면 #i

    0

    1답변

    s1 아래 클래스 템플릿 전문화에서는 정수 템플릿 매개 변수를 사용할 때 s1의 인스턴스화 만 허용합니다. template <typename, typename = void> struct s1; template <typename T> struct s1<T, std::enable_if_t<std::is_integral<T>::value>> { }

    7

    3답변

    컨테이너 유형의 클래스가 있는데, 기본 유형이 이동 전용이고 그렇지 않으면 복사 만 가능한 경우에만 이동하려고합니다. 그게 템플릿과 템플릿 기능을 할 수 없습니다 만드는 필요로하기 때문에, 나는 복사 ctor에 불과 SFINAE 수 없습니다, 지금 template<bool IsCopyable> struct Foo { Foo(); Foo

    2

    1답변

    필자는 필자가 검색 한 결과 타입이 필수적이라면 멤버 함수의 존재 여부에 따라 템플릿 확장을 선택하는 방법을 찾았습니다.하지만 SFINAE와 같은 것을 사용하려고합니다. 이름을 입력하십시오. 다른 질문에서 취한 예를보십시오. template<typename T> std::enable_if_t<std::is_integral<T>::value> f(T t){

    0

    1답변

    생성 사용할 결정 유형 SFINAE를 사용하여 class Class1 { public: Class1(int a) {} }; class Class2 { public: Class2() {} }; 그리고 두 템플릿 함수를. T가 기본 구성 가능하지 않은 경우 두 번째 매개 변수는 "실패"합니다. 오류를 발생 Class1* ob

    2

    1답변

    제공된 클래스에 정적 메서드가 있는지 여부를 검색하는 메커니즘을 구현하려고합니다. 그것은 아주 간단한 코드입니다하지만 난 EnableIfHasFooMethod 클래스의 전문성에 대한 예상대로 decltype()가 작동하지 않는 이유를 이해할 수 없다 : #include <iostream> struct A { static int Foo() { r