Puede una funcion devolver un tipo de dato definido por mi?

Started by gecko, December 27, 2011, 06:44:51 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

gecko

Bueno, tengo un tipo de dato _item
    string nombre;
    string desc;
y una funcion
_item cargarItem ( string rutaDelItem );

Creo una variable global de tipo _item
_item itemCargado;
y la idea seria poder hacer
itemCargado = cargarItem( "ruta/item.ini" );

Pero en esa ultima linea me tira un error "error: Struct Required ( token error ")" )."

Alguien tiene alguna idea? en que le estoy errando? :O
Torres Baldi Studio
http://torresbaldi.com

KeoH

en la función pones una linea tipo



return itemAcargar;
 

siendo itemAcargar un tipo _item?

igual es algo de eso xD Quiero decir .. q tu funcion tendrá que devolver un tipo _item

gecko

Si, si, adentro de la funcion declaro una variable del tipo _item, le doy valores a sus miembros, y por ultimo la devuelvo.

Tambien la funcion la estoy definiendo antes de usarla (porque me habia pasado algo similar con la devolucion de strings), pero nada.
Torres Baldi Studio
http://torresbaldi.com

Rein (K´)ah Al-Ghul

y porque no pasas, a la funcion, un puntero a esa variable y que la modifique directamente?

Rein (K´)ah Al-Ghul
Infected with the Krieger strain of the Human-MetaHuman Vampiric Virus.

en vez de darme Karma positivo, denme (K´)arma negativ

gecko

Gracias por la sugerencia, efectivamente usando punteros lo pude hacer andar...

ahora la llamada queda: cargarItem( "ruta/item.ini", &itemCargado );
Torres Baldi Studio
http://torresbaldi.com

Arcontus

Quote from: gecko on December 27, 2011, 06:44:51 PM
Bueno, tengo un tipo de dato _item
    string nombre;
    string desc;
y una funcion
_item cargarItem ( string rutaDelItem );

Creo una variable global de tipo _item
_item itemCargado;
y la idea seria poder hacer
itemCargado = cargarItem( "ruta/item.ini" );

Pero en esa ultima linea me tira un error "error: Struct Required ( token error ")" )."

Alguien tiene alguna idea? en que le estoy errando? :O
Puedes probar a declarar una variable tipo string y pasarle la variable de la siguiente manera
string ruta;
...
ruta = "ruta/item.ini";
...
itemCargado = cargarItem(ruta);
...

Creo que eso debería funcionarte.

Saludos!
5Leaps, el primer juego comercial desarrollado para BennuGD. http://www.5leaps.com