템플릿 템플릿 및 매개 변수 공제에 문제가 있습니다. 코드는 다음과 같습니다.템플릿 템플릿 함수 및 매개 변수 공제
template<typename U, template<typename> class T>
void test(T<U>&& t)
{
...
}
이 값은 lvalues와 rvalues 중 하나를 받아 들일 것으로 예상되지만 rvalues에서만 작동합니다. 이 경우 붕괴 규칙 "T & & & = T &"이 적용되지 않습니까?
당연히 lvalue 참조 함수도 선언 할 수 있지만 코드를 읽기 쉽게 만듭니다.
내가 왜 이것을 요구하는지 묻는다면 이 특정 클래스인지 static_assert를 사용하는 것입니다. 그렇게 간단한 방법이 있다면 코드를 변경해 드리겠습니다 만 템플릿 템플릿이 이런 식으로 사용할 수 있는지 알고 싶습니다. 참조 형식으로 추론 할 수
감사
typename T
달리