<div dir="ltr"><div>Si muchas gracias. <br><br></div>Un saludo<br></div><div class="gmail_extra"><br><br><div class="gmail_quote">2013/2/4 Davidson, Steven <span dir="ltr"><<a href="mailto:srd4121@njit.edu" target="_blank">srd4121@njit.edu</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hola Vicente,<br><div class="gmail_extra"><br><div class="gmail_quote"><div><div class="h5">2013/2/4 vicente lozano <span dir="ltr"><<a href="mailto:vicentelozano@gmail.com" target="_blank">vicentelozano@gmail.com</a>></span><br>

<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div><div><div><div><div><div>Hola tengo una duda sobre las conversiones a flotante en C++.<br>

<br></div>En un codigo que estoy revisando aparece:<br><br></div>for (int i=0,....){<br>....<br></div> vector3 a=vector3(if,....)<br>
...<br>}<br><br></div>if no esta declarado y vector3 recibe 3 floats como parametros.<br><br>Asi que mi duda es:<br></div>- Se puede poner el nombre de una variable seguido de una f en plan casting como con las constantes. (Equivalente a (float) i)<br>


</div>- Es pseudocodigo indicando precisamente eso.<br><br></div></div></blockquote><div><br></div></div></div><div>En primer lugar, no creo que el código original sea 'if'. Posiblemente, habría sido:<br><br><span style="font-family:arial,sans-serif;font-size:12.727272033691406px">vector3 a = vector3( 1f, ... );</span><br>

</div><div><br></div><div>Es decir, un uno como valor literal de tipo 'float', al usar el sufijo 'f'.</div><div><br></div><div>No puede ser 'if', porque el compilador daría un error al intentar usar el vocablo 'if', cuando espera una expresión. Además, si fuere el nombre de una variable, tampoco podríamos usar 'if', porque no podemos crear nombres (identificadores) que coincidan con los nombres de vocablos de C++. Esto provocaría más problemas que aportar soluciones.</div>

<div><br></div><div>Sólo puedes usar los sufijos con valores literales. No tendría sentido agregar un carácter al final de una cadena de caracteres para indicar su tipo, ya que sería difícil distinguir el sufijo del nombre original. Por ejemplo,</div>

<div><br></div><div>int precio = 1;</div><div>int preciof = 10;</div><div><br></div><div>cout << preciof;</div><div><br></div><div>¿Nos referimos a 'preciof' o a 'precio', pero de tipo 'float'? Es imposible saberlo, así que ni falta hace que lo intentemos.</div>

<div><br></div><div>Si necesitas hacer un cásting a 'float', entonces hazlo explícitamente:<br><br><div>cout << (float)precio;</div><div><br></div><div>O de la forma "más C++":<br>
<br></div><div><div>cout << static_cast<float>(precio);</div><div><br></div></div></div><div><br></div><div>Espero haber aclarado la duda.</div><span class="HOEnZb"><font color="#888888"><div><br></div><div>Steven</div>
<div><br>
</div></font></span></div></div></div>
<br>_______________________________________________<br>
Lista de correo Cconclase <a href="mailto:Cconclase@listas.conclase.net">Cconclase@listas.conclase.net</a><br>
<a href="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net" target="_blank">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</a><br>
Bajas: <a href="http://listas.conclase.net/index.php?gid=2&mnu=FAQ" target="_blank">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</a><br></blockquote></div><br></div>