Stratos: Punto de Encuentro de Desarrolladores

¡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.