Объявление типа внутри аргумента шаблона – стандартно или нет?C++

Программы на C++. Форум разработчиков
Anonymous
Объявление типа внутри аргумента шаблона – стандартно или нет?

Сообщение Anonymous »

Я нашел в сети какой-то странный фрагмент кода
Стандарт говорит

Типы не должны определяться в объявление параметра шаблона.

Но в коде ниже мы не объявляем шаблон, а используем его.

Код: Выделить всё

template 
struct test
{
using type = Tag;
};

int main()
{
[[maybe_unused]] test t;
return 0;
}
Похоже, здесь прямое объявление «struct s» появляется прямо внутри аргумента шаблона тестового шаблона. Это стандартно или нет?
PS
Этот код работает с помощью gcc и msvc

Подробнее здесь: https://stackoverflow.com/questions/793 ... ard-or-not

Вернуться в «C++»