Если у меня есть класс шаблона:
template<typename Layout>
class LayoutHandler : Handler {
};
и я хочу разоблачить параметр Layout для пользователя класса. Тогда:
template<typename Layout>
class LayoutHandler : Handler {
public:
typedef Layout Layout; // using the same name
};
VS2012 может скомпилировать этот код и дать ожидаемый результат. (Я использую std:: is_same, чтобы проверить его.) Разрешено ли это в стандартном С++ 03 или С++ 11?