Я знаю, что следующий код (Down Bellow или On Godbolt) не будет возможен, как есть, потому что вложенный имен-спецификатор создает контекст, не связанный. Но у меня есть надежда, что с помощью пользовательского руководства по вычету я мог бы сойти с рук. Могу ли я? < /P>
Я пробовал различные руководства по выводу, но у них всегда есть некоторые проблемы.template
struct Outer final
{
struct Inner
{
Inner(Outer o){};
};
};
template
using OuterInner = Outer::Inner;
template
T foo(OuterInner & engine)
{
return T();
}
int main()
{
Outer o;
OuterInner i(o);
// works: foo(i);
return foo(i); // doesn't work
}
Подробнее здесь: https://stackoverflow.com/questions/794 ... xt-because
Мобильная версия