template
struct test
{
using type = Tag;
};
int main()
{
[[maybe_unused]] test t;
return 0;
}
Похоже, здесь прямое объявление «struct s» появляется прямо внутри аргумента шаблона тестового шаблона. Это стандартно или нет?
PS
Этот код работает с помощью gcc и msvc
Я нашел в сети какой-то странный фрагмент кода Стандарт говорит
Типы не должны определяться в объявление параметра шаблона.
Но в коде ниже мы не объявляем шаблон, а используем его. [code]template struct test { using type = Tag; };
int main() { [[maybe_unused]] test t; return 0; } [/code] Похоже, здесь прямое объявление «struct s» появляется прямо внутри аргумента шаблона тестового шаблона. Это стандартно или нет? PS Этот код работает с помощью gcc и msvc
В следующем коде шаблон класса HANDLER должен принимать один параметр шаблона F и один параметр шаблона шаблона P. Базовый класс IMPLEMENTATION зависит от параметров R и S. При объявлении шаблона класса HANDLER я должен передать аргументы шаблона...
В следующем коде шаблон класса HANDLER должен принимать один параметр шаблона F и один параметр шаблона шаблона P. Базовый класс IMPLEMENTATION зависит от параметров R и S.
При объявлении HANDLER я должен передать аргументы шаблона F, P, R и S...