Código C++:
Ver original
Porque??
Saludos
| ||||
Funcion de argumentos variables con string Hola quiero hacer una funcion que reciba argumentos string y los imprima. Asi de simple pero no se que pasa que no funciona:
Código C++:
Ver original Porque?? Saludos |
| |||
Respuesta: Funcion de argumentos variables con string Al parecer vargargs es solo para tipos nativos del lenguaje (char,int,float,double) y punteros a ellos, no para structs o tipos provenientes de clases. Sugiero cambiar a char *, lo mas cercano a string que tienes.
__________________ Visita mi perfil en LinkedIn |
| |||
Respuesta: Funcion de argumentos variables con string Como CalgaryCorpus, creo que varargs es solamente para los tipos nativos de C y sus versiones signed/unsigned/long, así como los punteros correspondientes. Las estructuras de datos, mejor pásalas mediante un puntero. Ten en cuenta que en una función con número variable de argumentos no puedes conocer de antemano el número de argumentos que se han pasado, salvo que lo indiques de alguna manera mediante alguno de los argumentos (y tendrías que chequearlo dentro de tu función). Por mi experiencia personal, no pasa nada si luego lees menos argumentos de los que has pasado, pero puede haber problemas si intentas leer más de los que has pasado. Y, si es posible, dentro de la función lee los argumentos cuanto antes y cierra con la llamada a va_end(), procurando no llamar a ninguna función entre lectura y lectura de argumentos. De todos modos, si vas a trabajar con C++, plantéate si realmente necesitas funciones con número variable de argumentos o puedes resolver tu problema con la sobrecarga de funciones. Saludos, |
Etiquetas: |