и инициализации v2 на базе vl
Автор admin
Понедельник, 18 мая 2009 11:32
и инициализации v2 на базе vl используется экземпляр конструктора, в котором Inputlterator представляет vector::iterator. Вложенные шаблоны тоже могут быть классами (не только функциями). В следующем примере вложенный шаблон класса определяется за пределами вмещающего класса: //: C05:MemberClass.cpp // Вложенный шаблон класса #include #include using namespace std: tempiate class Outer { 196 Глава 5 • Шаблоны public: tempiate class Inner { public: void f(): }: }: tempiate template void Outer::Inner::f() { cout « “Outer — ” « typeid(T).name() « endl: cout « “Inner — ” « typeid(R).name() « endl: cout « “Full Inner == ” « typeid(*this) .nameO « endl: } int mainO { Outer::Inner inner: inner.f(); } ///:- Оператор typeid (см. главу
получает один аргумент и возвращает объект type_info; функция name() этого объекта возвращает строку, представляющую тип аргумента. Например, вызов typeid(int).name() возвращает строку “int” (впрочем, вид возвращаемой строки зависит от платформы). Оператор typeid может получить выражение и вернуть о
Комментарии закрыты.
Последние комментарии