«partial-specialization» 태그된 질문

4
함수 템플릿을 부분적으로 전문화 할 수없는 이유는 무엇입니까?
언어 사양 이 기능 템플릿의 부분적인 전문화를 금지한다는 것을 알고 있습니다 . 나는 그것이 그것을 금지하는 이유를 알고 싶습니다. 유용하지 않습니까? template<typename T, typename U> void f() {} //allowed! template<> void f<int, char>() {} //allowed! template<typename T> void f<char, T>() {} //not allowed! template<typename T> void f<T, int>() {} //not …

6
C ++ 함수 템플릿 부분 전문화?
아래 코드가 클래스의 부분적인 전문화라는 것을 알고 있습니다. template <typename T1, typename T2> class MyClass { … }; // partial specialization: both template parameters have same type template <typename T> class MyClass<T,T> { … }; 또한 C ++에서는 함수 템플릿 부분 전문화를 허용하지 않는다는 것을 알고 있습니다 (전체 만 허용됨). …

7
C #에서 템플릿 전문화를 수행하는 방법
C # 전문화는 어떻게 하시겠습니까? 문제를 제기하겠습니다. 템플릿 유형이 있지만 그것이 무엇인지 모릅니다. 그러나 XYZ호출하려는 것에서 파생 된 것인지 알고 있습니다 .alternativeFunc(). 가장 좋은 방법은 전문 함수 나 클래스를 호출하는 것입니다 normalCall반환 .normalFunc()의 파생 유형에 다른 전문성을 가지고있는 동안 XYZ전화로 .alternativeFunc(). 이것이 C #에서 어떻게 수행됩니까?

1
클래스 전문화에 clang / gcc 불일치
전문하는 동안 나는이 문제를 건너 온 tuple_size/ tuple_element구조 바인딩 (17) C ++에서 사용자 정의 클래스. 아래 코드는 GCC에서는 컴파일되지만 clang에서는 컴파일되지 않습니다 (두 트렁크 버전 모두 아래 링크 참조). #include <type_traits> template<typename T, typename... Ts> using sfinae_t = T; template<typename T, bool... Bs> using sfinae_v_t = sfinae_t<T, typename std::enable_if<Bs>::type...>; template …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.