Logo

¡Bienvenido a Stratos!

Acceder

Foros





Un Problema Sintáctico Con Templates Y Stl

Iniciado por CoLSoN2, 29 de Junio de 2005, 12:43:50 PM

« anterior - próximo »

CoLSoN2

 Estoy haciendo un contenedor un poco especial basado en varios std::vector y estoy haciendo también una clase auxiliar Iterator para el mismo, similar a los iteradores de STL.

El problema es que tengo lo siguiente:


template <class T> class DataGrid;

template <class T>
class Iterator
{
private:
vector<T*>::iterator mIter;
DataGrid<T>&   mGrid;
int      mCurrentCol;
};


y me da los siguientes errores en la línea de mIter:

error C2146: syntax error : missing ';' before identifier 'mIter'
error C2501: 'Sexy::Iterator::mIter' : missing storage-class or type specifiers

Si cambio el parámetro de vector de T* a int compila sin problemas. Sabéis qué puede estar pasando?
Manuel F. Lara
Descargar juegos indie  - blog sobre juegos indie y casual
El Desarrollo Personal.com  - blog sobre productividad, motivación y espíritu emprendedor

gdl

 ¿Y si pones...

typedef T* Iptr;
typedef std::vector<Iptr> Ivec;
Ivec::iterator mIter;


...en qué punto te da el error?

PD: Comprueba los includes y los usings. Parece que el compilador desconoce algún símbolo.

CoLSoN2

 Nah, al final he puesto el tipo que necesitaba y ya está, porque ha acabado siendo algo demasiado específico para molestarse en templatizarlo.
Manuel F. Lara
Descargar juegos indie  - blog sobre juegos indie y casual
El Desarrollo Personal.com  - blog sobre productividad, motivación y espíritu emprendedor

gdl

 Jejeje... la solución más rápida  :rolleyes:  

tiutiu

b>:: Pandora's Box project ::
Notas e ideas sobre desarrollo de engines para juegos