Szukałem czegoś innego związanego z parametrami szablonów szablonów i wydarzyło się po this answer, które twierdzi, że parametry szablonów szablonów szablonów są , a nie dozwolone przez standard.Czy szablon szablonu szablonu jest rozszerzeniem lub częścią standardu?
Jednakże następujący kod kompiluje w najnowszym brzękiem (3.2) i najnowszym GCC (4.8):
template<template<template<typename> class> class T> struct test {};
template<template<typename> class T> struct foo {};
test<foo> bar;
Jest to rozszerzenie, czy jest inna odpowiedź faktycznie błędne i jest to dozwolone przez standard? Jeśli nie, czy istnieje jakiś szczególny powód takiego pominięcia?
@chris OP oznacza prawdopodobnie migawkę 4,8. Używam go przez jakiś czas. – juanchopanza
Tak, mam zdjęcia z MacPorts ... więc, prawdopodobnie nie najnowsze svn lub coś w tym stylu. – celticminstrel
to także kompiluje na gcc 4.5 na Ideone http://ideone.com/BUAuw – TemplateRex