Ver Mensaje Individual
  #6 (permalink)  
Antiguo 25/08/2016, 03:41
dehm
 
Fecha de Ingreso: septiembre-2010
Mensajes: 494
Antigüedad: 14 años, 1 mes
Puntos: 10
Respuesta: Referencia a función con cláusula const

Bueno, aunque ya lo he marcado como solucionado, pregunto si entonces esta es la mejor forma de establecer una función miembro que sólo va a ser de consulta.

Se trataría de una clase que genera una lista y que será sumada desde fuera.

Código C++:
Ver original
  1. #include <iostream>
  2. #include <list>
  3. using namespace std;
  4.  
  5. class lista
  6. {
  7. private:
  8.     list<int> m_lista;
  9.  
  10. public:
  11.     lista(){}
  12.     void hazLista(int tam)
  13.     {
  14.         for (int i=0;i<tam;i++)
  15.         {
  16.             m_lista.push_back(i);
  17.         }
  18.     }
  19.     void mostrar()
  20.     {
  21.         for (auto it = m_lista.begin();it!=m_lista.end();++it)
  22.         {
  23.             cout<<(*it)<<endl;
  24.         }
  25.     }
  26.     const list<int>&LeeLista() const
  27.     {
  28.         return m_lista;
  29.     }
  30.  
  31. };
  32.  
  33. int sumarLista (const list<int>& l)
  34. {
  35.     int suma=0;
  36.     for (auto it = l.begin();it!=l.end();++it)
  37.     {
  38.         suma+=(*it);
  39.     }
  40.     return suma;
  41. }
  42.  
  43. int main()
  44. {
  45.  
  46.     lista l;
  47.     l.hazLista(3);
  48.     l.mostrar();
  49.  
  50.     int resultado = sumarLista(l.LeeLista());
  51.     cout<<"Resultado: "<<resultado<<endl;
  52.     return 0;
  53. }
__________________
Mi calculadora en Qt