Logo

¡Bienvenido a Stratos!

Acceder

Foros



CArray

Iniciado por fgutierrez, 23 de Octubre de 2007, 12:15:14 PM

« anterior - próximo »

fgutierrez

Hola, tengo un problema al intentar utilizar esta template class. Cuando declaro una instancia de la misma de la forma

CArray<int,int> branch_container;

e intento compilar, el compilador me lanza los siguientes errores:


U:\L_System_v1\LTree_v1\LTree_v1.cpp(69) : error C2143: syntax error : missing ';' before '<'

U:\L_System_v1\LTree_v1\LTree_v1.cpp(69) : error C2501: 'CArray' : missing storage-class or type specifiers

U:\L_System_v1\LTree_v1\LTree_v1.cpp(69) : error C2143: syntax error : missing ';' before '<'



¿Alguien sabe porque ocurre eso?

Muchas gracias

Fernando Gutiérrez[/code]
eamos realistas: Exijamos lo imposible

Tei

nunca he usado templates en C++ pero se me ocurre que compruebes que estas realmente compilando en C++ y no en C.  (Aunque el nombre del fichero sea .cpp quizas esta usando C por alguna razon.)

si no es esto, seguramente sea que CArray no esta reconocido, y te falta un include adecuado.

aunque nunca he programado en templates, he buscado un ejemplo en internet, y parece sintacticamente equivalente a tu codigo:

#include <Afxwin.h>
#include <Afxtempl.h>

void main()
{

   CString l_strValue;
   CArray<CString,CString> l_CArray;

   for(int i=0;i< 20; i++)
   {

     //Use the CString format function to create different values
     l_strValue.Format("Value %d",i);
     //Add the formatted CString to CArray
     l_CArray.Add(l_strValue);

   }

}

Prompt

Tiene toda la pinta de que le falte el include a CArray :) ya que no reconoce CArray.






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.
Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.