<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Tahoma
}
--></style>
</head>
<body class='hmmessage'>
Muchisimas gracias! me funciono a la perfeccion. Muchisimas gracias por la solucion. A partir de ahora tengo que tner en cuenta esto.! Gracias!<br><br><hr id="stopSpelling">Date: Thu, 25 Nov 2010 02:16:21 +0100<br>From: stevenrichard.davidson@gmail.com<br>To: cconclase@listas.conclase.net<br>Subject: Re: [C con Clase]   Problemas con asignaciond el tamaño de un vector<br><br>Hola Pablo,<br><br>
<div class="ecxgmail_quote">2010/11/25 Pablo PEC <span dir="ltr"><<a href="mailto:pablo06_cabj_ec@hotmail.com">pablo06_cabj_ec@hotmail.com</a>></span><br>
<blockquote style="border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;" class="ecxgmail_quote">
<div>Hola estoy haciendo un programa donde debo ingresar hasta 100 valores dentro de un vector.<br>Mi problema surgue cuando pido ingresar la cantidad de valores que se van a ingresar y lo guardo en una variable. Luego a esa variable la asigno como tamaño del vector.<br>
El compilador me indica un error que dice:  ISO C++ forbids variable length array 'vector'</div></blockquote>
<div> </div>
<div>Como te indica el compilador, esto es un error. No puedes cambiar el tamaño máximo de elementos de un array (o vector). De hecho, el compilador DEBE conocer la cantidad exacta de elementos y por tanto, no puede haber variables.</div>

<div> </div>
<div>Si quieres tener cantidades variables de elementos, entonces sugiero usar memoria dinámicamente adjudicada. Por ejemplo,</div>
<div> </div>
<div>float *pVector;<br>...</div>
<div>pVector = new float[tama];</div>
<div>for( x=0; x<tama; x++ )<br>{<br>  cout << "ingrese numero";</div>
<div>  cin >> pVector[x];<br>}</div>
<div>...</div>
<div>delete[] pVector;</div>
<div> </div>
<div>Recuerda que debes liberar la memoria que adjudicas dinámicamente cuando ya no la necesites. Típicamente, liberamos esta memoria justo antes de terminar el programa.</div>
<div> </div>
<div> </div>
<div>Otra solución es crear una cantidad máxima de elementos: 100, por ejemplo, y luego mantener una cantidad actual de elementos válidos. Por ejemplo,</div>
<div> </div>
<div>float vector[100];</div>
<div>int nCantActual;</div>
<div>...</div>
<div>
<div>for( x=0; x<nCantActual; x++ )<br>{<br>  cout << "ingrese numero";</div>
<div>  cin >> vector[x];<br>}</div></div>
<div> </div>
<div> </div>
<div>Espero que esto te ayude.</div>
<div> </div>
<div>Steven</div>
<div> </div></div>
<br>_______________________________________________
Lista de correo Cconclase Cconclase@listas.conclase.net
http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ                                     </body>
</html>