template IsSame(T){
template As(alias t){
enum As = is(T : typeof(t));
}
}
void main()
{
int i;
enum b = IsSame!int.As!(i);
}
Err:Невозможно использовать локальный «я» в качестве параметра неглобальную шаблона
Error: template instance As!(i) cannot use local 'i' as parameter to non-global template As(alias t) dmd failed with exit code 1
Я не понимаю, сообщение об ошибке.
Я также попытался
template IsSame(T){
enum As(alias t) = is(T : typeof(t));
}
Какие результаты в
Error: template app.IsSame!int.As cannot deduce function from argument types !()(int), candidates are: source/app.d(50,8):
app.IsSame!int.As(alias t)
Что я делаю неправильно?
есть ли причина, вы используете '' enum' для b' вместо 'bool'? –
Мне нужно это во время компиляции, не уверенный, хватит ли для этого bool. –