[C con Clase] Paso de parámetros "const QString& texto" "const bool& cierto"

User usuarioanonimomysql en gmail.com
Mar Mar 4 08:05:19 CET 2014


Hola Programante,

¿Por qué dices que en el caso de bool es más eficiente pasarlo por copia
que proporcionar una referencia constante? ¿No sería más correcto decir que
es más eficiente pasarlo por referencia constante pero que los recursos
ahorrados son muy pocos y casi no hay diferencia con pasarlo por valor? Al
menos, eso es lo que he entendido tras la respuesta de Salvador.

Saludos.


El 3 de marzo de 2014, 21:50, Programante <programante en gmail.com> escribió:

> El 03/03/14 10:18, User escribió:
>
>  Hola,
>>
>> El uso de "const QString& texto" como paso de parámetro tiene sentido
>> para indicar que es un parámetro de entrada que no se va a modificar dentro
>> de la función.
>>
>> ¿Tendría sentido para otros tipos como por ejemplo "bool"? Ejemplo:
>> "const bool& cierto"
>>
>> Saludos.
>>
> No.
> Una cadena es un objeto complejo, y pasarlo por copia incurre en ciertos
> costes. Por eso lo pasamos por referencia (y luego la hacemos const, porque
> no nos interesa modificar el objeto).
> En cambio un bool es un tipo intrínseco que no genera sobrecarga. Es más
> eficiciente pasarlo por copia que proporcionar una referencia constante
> (aunque sea perfectamente legal hacerlo si nos apetece).
>
> Un saludo
>
>
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20140304/1210b17c/attachment.html>


Más información sobre la lista de distribución Cconclase