| 
	
		|  Autor | Tema: Como asignar tiupo a muchas variables  (Leído 4,891 veces) |  
	| 
			| 
					
						| CBFD 
								
								 Desconectado 
								Mensajes: 12
								
								
								
								
								
								   | 
 
Hola a todos:
 Soy nuevo en C++ y todavía muy torpe, vengo de otro lenguaje y estoy tratando de usar el máximo de código y de funciones que hacía en él, paso a explicar una de ellas:
 
 Yo podía definir el nombre de una variable poniéndola en otra y precediéndola del símbolo &.
 
 Por ejemplo:
 {
 i = 1
 for( int a = 1; a < 1000; a = a + 1 )
 {
 var01 = "intvar"+str(a)
 int &var01
 }
 }
 
 Donde str() es una función que convierte un numero en caracteres para formar los nombres desde intvar0001 a intvar1000 e int &var01 lo que hacia era iniciar la variable de como se llamaba var01 en ese momento como int y así conseguía iniciar 1000 variables con un código pequeño.
 
 Si alguien puede ayudarme muchas gracias.
 
 Carlos
 
 
 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| Maik33 
								
								 Desconectado 
								Mensajes: 128
								
								
								
								
								
								   | 
 
¿Y no es más fácil crear un array o puntero para almacenar los datos? int a[1000];int i ;for (i = 0; i < 1000; i++) {     a[i] = 0;}
 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| CBFD 
								
								 Desconectado 
								Mensajes: 12
								
								
								
								
								
								   | 
 
Hola y gracias por tu interés:
 Lo que muestro es un ejemplo para hacerme entender lo que deseo es si existe una manera de hacer eso poner el símbolo & (u otro o de otra manera) delante de una variable y que lo que se cree, ejecute, inicialice sea lo que vale la variable y no la variable (intvar0001 en vez de var01) en C++ para reutilizar mucho código ya creado.
 
 Un saludo
 
 Carlos
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| ivancea96 
								       
								
								 Desconectado 
								Mensajes: 3.412
								
								 
								ASMático
								
								
								
								
								
								     | 
 
Eso no lo podrás hacer ne C++ como dices. Aquí las variables las declaras con código, no hay maneras rápidas de ese tipo. Para esa clase de cosas, deben usarse arrays (en C++, y en cualquier otro lenguaje, no creo que ese método sea muy recomendable, puesto que si quieres crear tantas variables segudas, esas variables van a tener un uso parecido). Así que array.Y como dato, en C++ poner & al declarar una variable genera un ""alias"".
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| MAFUS 
								       
								
								 Desconectado 
								Mensajes: 1.603
								
								   | 
 
¿Qué lenguaje es ese? en verdad quiero saberlo.
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| CBFD 
								
								 Desconectado 
								Mensajes: 12
								
								
								
								
								
								   | 
 
Hola MAFUS y ivancea96:
 Es Clipper con las librerías Fivewin y  harbour, y todas son librerías de c++ que se tienen compilar con borland de embarcadero.
 
 Os repito lo de las 1000 variables es un ejemplo otro podría ser el uso de una base de datos:
 
 Imaginemos que cada año tenemos que usa unos límites de cotización para aplicar a las nóminas y los tenemos en una base los del 2015 en "base2015" los de 2016 en "base2016". Si yo creo:
 base = "base" + ejercicio
 
 y luego
 
 use &base
 
 dependiendo de la variable "ejercicio" obtendremos los límites de 2015 o 2016.
 
 O imaginemos que llamas a una función y dependiendo desde donde la llames vuelva a otra para continuar con un proceso:
 
 void uno()
 {
 sitio = "CUATRO()"
 tres()
 }
 
 void dos()
 {
 sitio = "CINCO()"
 tres()
 }
 
 void tres()
 {
 run &sitio
 }
 
 Dependiendo de si viene de uno o de dos va a cuatro o cinco.
 
 Un saludo
 
 Carlos
 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| MAFUS 
								       
								
								 Desconectado 
								Mensajes: 1.603
								
								   | 
 
Entiendo.Vienes de un lenguaje que es dinámico donde una variable puede contener cualquier tipo de dato.
 Deberás cambiar tu forma de pensar.
 C/C++ son lenguajes estáticos, no sé si ahora C++ usa la palabra clave var en la que el propio lengauje puede adivinar que tipo otorgar al dato, lo que significa que de antemano debes saber qué tipo de dato guardará la variable.
 Si tienes paciencia en tu estudio y llegas a punteros a void, y en C++ a las plantillas verás que hay un comportamiento algo parecido a lo que dices. Pero en verdad, en tiempo de diseño, deberás elegir que tipo deben ser tus variables.
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| CBFD 
								
								 Desconectado 
								Mensajes: 12
								
								
								
								
								
								   | 
 
Hola MAFUS:
 Yo en todo momento se que tipo son las variables.
 
 Imaginate:
 
 int var01;
 int var02 = 1;
 char[6] var03 = "var04";
 int var04 = 4;
 
 var01 = var02 + &var03;
 
 y lo tendría que hacer es var01 = var02 + var04.
 
 Un saludo
 
 Carlos
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| MAFUS 
								       
								
								 Desconectado 
								Mensajes: 1.603
								
								   | 
 
No existe tal mecanismo en C. Pero puedes usar punteros. int var01;int var02 = 1;int *var03;int var04 = 4; var03 = &var04; /* No se podía hacer antes la asignación porque var04 no existía */ var01 = var02 + *var03; 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| CBFD 
								
								 Desconectado 
								Mensajes: 12
								
								
								
								
								
								   | 
 
Gracias MAFUS por tus aclaraciones. |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  |  |  
 
	
 
 
				
					
						| Mensajes similares |  
						|  | Asunto | Iniciado por | Respuestas | Vistas | Último mensaje |  
						|   |   | [BATCH] asignar variables con set desde un for /f[Solucionado] Scripting
 | haveavigar | 5 | 7,776 |  14 Enero 2011, 20:31 pm por leogtz
 |  
						|   |   | asignar variables en .bat Scripting
 | viejari | 4 | 8,853 |  31 Mayo 2012, 00:03 am por viejari
 |  
						|   |   | Asignar variables de un webbrower aVB. Programación Visual Basic
 | Menal_mur | 0 | 1,682 |  19 Agosto 2013, 17:25 pm por Menal_mur
 |  
						|   |   | [SHELL Linux] Cómo definir muchas variables de entorno en base a un archivo? Scripting
 | Skeletron | 2 | 2,971 |  14 Enero 2014, 22:02 pm por Eleкtro
 |  
						|   |   | Asignar valores de un fichero a variables de una funcion Programación C/C++
 | joelujos | 0 | 2,147 |  6 Diciembre 2015, 00:13 am por joelujos
 |    |